Class EmbeddedChartBuilder

Generatoredigraficiincorporato

Strumento di creazione utilizzato per modificare un EmbeddedChart. Le modifiche apportate al grafico non vengono salvate finché Sheet.updateChart(chart) non viene chiamato sul grafico ricreato.

const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('A1:B8');
let chart = sheet.getCharts()[0];
chart = chart.modify()
            .addRange(range)
            .setOption('title', 'Updated!')
            .setOption('animation.duration', 500)
            .setPosition(2, 2, 0, 0)
            .build();
sheet.updateChart(chart);

Metodi

MetodoTipo restituitoBreve descrizione
addRange(range)EmbeddedChartBuilderAggiunge un intervallo al grafico che questo generatore modifica.
asAreaChart()EmbeddedAreaChartBuilderImposta il tipo di grafico su AreaChart e restituisce un EmbeddedAreaChartBuilder.
asBarChart()EmbeddedBarChartBuilderImposta il tipo di grafico su BarChart e restituisce un EmbeddedBarChartBuilder.
asColumnChart()EmbeddedColumnChartBuilderImposta il tipo di grafico su ColumnChart e restituisce un EmbeddedColumnChartBuilder.
asComboChart()EmbeddedComboChartBuilderImposta il tipo di grafico su ComboChart e restituisce un EmbeddedComboChartBuilder.
asHistogramChart()EmbeddedHistogramChartBuilderImposta il tipo di grafico su HistogramChart e restituisce un EmbeddedHistogramChartBuilder.
asLineChart()EmbeddedLineChartBuilderImposta il tipo di grafico su LineChart e restituisce un EmbeddedLineChartBuilder.
asPieChart()EmbeddedPieChartBuilderImposta il tipo di grafico su PieChart e restituisce un EmbeddedPieChartBuilder.
asScatterChart()EmbeddedScatterChartBuilderImposta il tipo di grafico su ScatterChart e restituisce un EmbeddedScatterChartBuilder.
asTableChart()EmbeddedTableChartBuilderImposta il tipo di grafico su TableChart e restituisce un EmbeddedTableChartBuilder.
build()EmbeddedChartCrea il grafico in modo che rifletta tutte le modifiche apportate.
clearRanges()EmbeddedChartBuilderRimuove tutti gli intervalli dal grafico modificato da questo generatore.
getChartType()ChartTypeRestituisce il tipo di grafico corrente.
getContainer()ContainerInfoRestituisce il grafico ContainerInfo, che indica la posizione in cui viene visualizzato il grafico nel foglio.
getRanges()Range[]Restituisce una copia dell'elenco degli intervalli che forniscono attualmente dati per questo grafico.
removeRange(range)EmbeddedChartBuilderRimuove l'intervallo specificato dal grafico modificato da questo generatore.
setChartType(type)EmbeddedChartBuilderModifica il tipo di grafico.
setHiddenDimensionStrategy(strategy)EmbeddedChartBuilderImposta la strategia da utilizzare per righe e colonne nascoste.
setMergeStrategy(mergeStrategy)EmbeddedChartBuilderImposta la strategia di unione da utilizzare quando esiste più di un intervallo.
setNumHeaders(headers)EmbeddedChartBuilderImposta il numero di righe o colonne dell'intervallo da considerare come intestazioni.
setOption(option, value)EmbeddedChartBuilderImposta le opzioni avanzate per questo grafico.
setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)EmbeddedChartBuilderImposta la posizione, modificando il punto in cui viene visualizzato il grafico nel foglio.
setTransposeRowsAndColumns(transpose)EmbeddedChartBuilderSpecifica se le righe e le colonne del grafico vengono trasposte.

Documentazione dettagliata

addRange(range)

Aggiunge un intervallo al grafico che questo generatore modifica. Non aggiunge l'intervallo se è già stato aggiunto al grafico.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(sheet.getRange('A1:B8'))
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Parametri

NomeTipoDescrizione
rangeRangeL'intervallo da aggiungere.

Indietro

EmbeddedChartBuilder: questo generatore, per il concatenamento.


asAreaChart()

Imposta il tipo di grafico su AreaChart e restituisce un EmbeddedAreaChartBuilder.

Indietro

EmbeddedAreaChartBuilder: un generatore per un grafico ad area.


asBarChart()

Imposta il tipo di grafico su BarChart e restituisce un EmbeddedBarChartBuilder.

Indietro

EmbeddedBarChartBuilder: un generatore per un grafico a barre.


asColumnChart()

Imposta il tipo di grafico su ColumnChart e restituisce un EmbeddedColumnChartBuilder.

Indietro

EmbeddedColumnChartBuilder: un generatore per un grafico a colonne.


asComboChart()

Imposta il tipo di grafico su ComboChart e restituisce un EmbeddedComboChartBuilder.

Indietro

EmbeddedComboChartBuilder: un generatore per un grafico combinato.


asHistogramChart()

Imposta il tipo di grafico su HistogramChart e restituisce un EmbeddedHistogramChartBuilder.

Indietro

EmbeddedHistogramChartBuilder: uno strumento di creazione per un istogramma.


asLineChart()

Imposta il tipo di grafico su LineChart e restituisce un EmbeddedLineChartBuilder.

Indietro

EmbeddedLineChartBuilder: un generatore per un grafico a linee.


asPieChart()

Imposta il tipo di grafico su PieChart e restituisce un EmbeddedPieChartBuilder.

Indietro

EmbeddedPieChartBuilder: un generatore per un grafico a torta.


asScatterChart()

Imposta il tipo di grafico su ScatterChart e restituisce un EmbeddedScatterChartBuilder.

Indietro

EmbeddedScatterChartBuilder: uno strumento per la creazione di un grafico a dispersione.


asTableChart()

Imposta il tipo di grafico su TableChart e restituisce un EmbeddedTableChartBuilder.

Indietro

EmbeddedTableChartBuilder: un generatore per un grafico a tabella.


build()

Crea il grafico in modo che rifletta tutte le modifiche apportate.

Questo metodo non disegna automaticamente il grafico sopra il foglio di lavoro. Un nuovo grafico deve essere inserito tramite sheet.insertChart(chart), mentre un grafico esistente deve essere aggiornato tramite sheet.updateChart(chart).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B5');
const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(range)
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Indietro

EmbeddedChart: il grafico creato, che deve ancora essere aggiunto al foglio di lavoro.


clearRanges()

Rimuove tutti gli intervalli dal grafico modificato da questo generatore.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// This code updates the chart to use only the new ranges while preserving the
// existing formatting of the chart.
const chart = sheet.getCharts()[0];
const newChart = chart.modify()
                     .clearRanges()
                     .addRange(sheet.getRange('A1:A5'))
                     .addRange(sheet.getRange('B1:B5'))
                     .build();
sheet.updateChart(newChart);

Indietro

EmbeddedChartBuilder: questo generatore, per il concatenamento.


getChartType()

Restituisce il tipo di grafico corrente.

Indietro

ChartType: il tipo di grafico.


getContainer()

Restituisce il grafico ContainerInfo, che indica la posizione in cui viene visualizzato il grafico nel foglio.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const chartBuilder = sheet.newChart()
                         .setChartType(Charts.ChartType.BAR)
                         .addRange(sheet.getRange('A1:B8'))
                         .setPosition(5, 5, 0, 0);

// This method returns the exact same data as Chart#getContainerInfo()
const containerInfo = chartBuilder.getContainer();

// Logs the values used in setPosition()
Logger.log(
    'Anchor Column: %s\r\nAnchor Row %s\r\nOffset X %s\r\nOffset Y %s',
    containerInfo.getAnchorColumn(),
    containerInfo.getAnchorRow(),
    containerInfo.getOffsetX(),
    containerInfo.getOffsetY(),
);

Indietro

ContainerInfo: un oggetto contenente la posizione del contenitore del grafico.


getRanges()

Restituisce una copia dell'elenco degli intervalli che forniscono attualmente dati per questo grafico. Utilizza addRange(range) e removeRange(range) per modificare questo elenco.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const chartBuilder = sheet.newChart()
                         .setChartType(Charts.ChartType.BAR)
                         .addRange(sheet.getRange('A1:B8'))
                         .setPosition(5, 5, 0, 0);

const ranges = chartBuilder.getRanges();

// There's only one range as a data source for this chart,
// so this logs "A1:B8"
for (const i in ranges) {
  const range = ranges[i];
  Logger.log(range.getA1Notation());
}

Indietro

Range[]: un array di intervalli che funge da origine dati per il grafico da creare.


removeRange(range)

Rimuove l'intervallo specificato dal grafico modificato da questo generatore. Non genera un errore se l'intervallo non è presente in questo grafico.

L'intervallo rimosso deve corrispondere a un intervallo aggiunto tramite addRange(range); altrimenti non viene apportata alcuna modifica al grafico. Questo metodo non può essere utilizzato per rimuovere parzialmente i valori da un intervallo.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const firstRange = sheet.getRange('A1:B5');
const secondRange = sheet.getRange('A6:B8');

const chartBuilder = sheet.newChart()
                         .setChartType(Charts.ChartType.BAR)
                         .addRange(firstRange)
                         // This range renders in a different color
                         .addRange(secondRange)
                         .setPosition(5, 5, 0, 0);

// Note that you can use either of these two formats, but the range
// MUST match up with a range that was added via addRange(), or it
// is not removed, and does not throw an exception
chartBuilder.removeRange(firstRange);
chartBuilder.removeRange(sheet.getRange('A6:B8'));

const chart = chartBuilder.build();

sheet.insertChart(chart);

Parametri

NomeTipoDescrizione
rangeRangeL'intervallo da rimuovere.

Indietro

EmbeddedChartBuilder: questo generatore, per il concatenamento.


setChartType(type)

Modifica il tipo di grafico. Al momento non tutti i tipi di grafici incorporati sono supportati. Leggi i ChartType.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B5');
const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(range)
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Parametri

NomeTipoDescrizione
typeChartTypeIl tipo in cui convertire questo grafico.

Indietro

EmbeddedChartBuilder: questo generatore, per il concatenamento.


setHiddenDimensionStrategy(strategy)

Imposta la strategia da utilizzare per righe e colonne nascoste. Il valore predefinito è IGNORE_ROWS.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B5');
const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(range)
                  .setHiddenDimensionStrategy(
                      Charts.ChartHiddenDimensionStrategy.IGNORE_COLUMNS,
                      )
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Parametri

NomeTipoDescrizione
strategyChartHiddenDimensionStrategyLa strategia da utilizzare per righe e colonne nascoste.

Indietro

EmbeddedChartBuilder: questo generatore, per il concatenamento.


setMergeStrategy(mergeStrategy)

Imposta la strategia di unione da utilizzare quando esiste più di un intervallo. Se MERGE_ROWS, le righe vengono unite; se MERGE_COLUMNS, le colonne vengono unite. Il valore predefinito è MERGE_COLUMNS.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B10');
const range2 = sheet.getRange('C:C10');
const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(range)
                  .addRange(range2)
                  .setMergeStrategy(Charts.ChartMergeStrategy.MERGE_ROWS)
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Parametri

NomeTipoDescrizione
mergeStrategyChartMergeStrategyLa strategia di unione da utilizzare.

Indietro

EmbeddedChartBuilder: questo generatore, per il concatenamento.


setNumHeaders(headers)

Imposta il numero di righe o colonne dell'intervallo da considerare come intestazioni.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B5');
const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(range)
                  .setNumHeaders(1)
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Parametri

NomeTipoDescrizione
headersIntegerIl numero di righe o colonne da considerare come intestazioni. I valori negativi fanno sì che le intestazioni vengano rilevate automaticamente.

Indietro

EmbeddedChartBuilder: questo generatore, per il concatenamento.


setOption(option, value)

Imposta le opzioni avanzate per questo grafico. Per visualizzare un elenco delle opzioni disponibili, consulta Opzioni di configurazione del grafico.

Questo metodo non convalida che l'opzione specificata sia valida per questo tipo di grafico né che il valore abbia il formato/la struttura corretti.

Questo esempio mostra come modificare il titolo e impostare una legenda.

const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
const sheet = spreadsheet.getSheets()[0];
const chart = sheet.newChart()
 .setOption('title', 'Earnings projections')
 .setOption('legend', {
   position: 'top',
   textStyle: { color: 'blue', fontSize: 16 },
 }).build();

Parametri

NomeTipoDescrizione
optionStringIl nome dell'opzione.
valueObjectIl valore dell'opzione.

Indietro

EmbeddedChartBuilder: questo generatore, per il concatenamento.


setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)

Imposta la posizione, modificando il punto in cui viene visualizzato il grafico nel foglio. anchorRowPos e anchorColPos sono indicizzati a partire da 1.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B5');
const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(range)
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Parametri

NomeTipoDescrizione
anchorRowPosIntegerIl lato superiore del grafico è ancorato a questa riga.
anchorColPosIntegerIl lato sinistro del grafico è ancorato a questa colonna.
offsetXIntegerL'angolo in alto a destra del grafico è spostato di questo numero di pixel.
offsetYIntegerL'angolo in basso a sinistra del grafico è spostato di questo numero di pixel.

Indietro

EmbeddedChartBuilder: questo generatore, per il concatenamento.


setTransposeRowsAndColumns(transpose)

Specifica se le righe e le colonne del grafico vengono trasposte. Se impostato su true, le righe e le colonne vengono scambiate. Il valore predefinito è false.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B5');
const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(range)
                  .setTransposeRowsAndColumns(true)
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Parametri

NomeTipoDescrizione
transposeBooleanSe true, le righe e le colonne utilizzate per creare il grafico vengono trasposte.

Indietro

EmbeddedChartBuilder: questo generatore, per il concatenamento.