Class EmbeddedChartBuilder

EmbeddedChartBuilder

Builder zum Bearbeiten eines EmbeddedChart. Änderungen am Diagramm werden erst gespeichert, wenn Sheet.updateChart(chart) für das neu erstellte Diagramm aufgerufen wird.

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);

Methoden

MethodeRückgabetypKurzbeschreibung
addRange(range)EmbeddedChartBuilderFügt dem Diagramm, das von diesem Builder geändert wird, einen Bereich hinzu.
asAreaChart()EmbeddedAreaChartBuilderLegt den Diagrammtyp auf „AreaChart“ fest und gibt ein EmbeddedAreaChartBuilder zurück.
asBarChart()EmbeddedBarChartBuilderLegt den Diagrammtyp auf BarChart fest und gibt ein EmbeddedBarChartBuilder zurück.
asColumnChart()EmbeddedColumnChartBuilderLegt den Diagrammtyp auf „ColumnChart“ fest und gibt ein EmbeddedColumnChartBuilder zurück.
asComboChart()EmbeddedComboChartBuilderLegt den Diagrammtyp auf „ComboChart“ fest und gibt ein EmbeddedComboChartBuilder zurück.
asHistogramChart()EmbeddedHistogramChartBuilderLegt den Diagrammtyp auf HistogramChart fest und gibt ein EmbeddedHistogramChartBuilder zurück.
asLineChart()EmbeddedLineChartBuilderLegt den Diagrammtyp auf „LineChart“ fest und gibt ein EmbeddedLineChartBuilder zurück.
asPieChart()EmbeddedPieChartBuilderLegt den Diagrammtyp auf „PieChart“ fest und gibt ein EmbeddedPieChartBuilder zurück.
asScatterChart()EmbeddedScatterChartBuilderLegt den Diagrammtyp auf ScatterChart fest und gibt ein EmbeddedScatterChartBuilder zurück.
asTableChart()EmbeddedTableChartBuilderLegt den Diagrammtyp auf „TableChart“ fest und gibt ein EmbeddedTableChartBuilder zurück.
build()EmbeddedChartErstellt das Diagramm neu, um alle Änderungen zu berücksichtigen.
clearRanges()EmbeddedChartBuilderEntfernt alle Bereiche aus dem Diagramm, das mit diesem Builder geändert wird.
getChartType()ChartTypeGibt den aktuellen Diagrammtyp zurück.
getContainer()ContainerInfoGibt das Diagramm ContainerInfo zurück, das angibt, wo das Diagramm im Tabellenblatt angezeigt wird.
getRanges()Range[]Gibt eine Kopie der Liste der Bereiche zurück, die derzeit Daten für dieses Diagramm liefern.
removeRange(range)EmbeddedChartBuilderEntfernt den angegebenen Bereich aus dem Diagramm, das mit diesem Builder geändert wird.
setChartType(type)EmbeddedChartBuilderÄndert den Diagrammtyp.
setHiddenDimensionStrategy(strategy)EmbeddedChartBuilderLegt die Strategie für ausgeblendete Zeilen und Spalten fest.
setMergeStrategy(mergeStrategy)EmbeddedChartBuilderLegt die Zusammenführungsstrategie fest, die verwendet werden soll, wenn mehrere Bereiche vorhanden sind.
setNumHeaders(headers)EmbeddedChartBuilderLegt die Anzahl der Zeilen oder Spalten des Bereichs fest, die als Überschriften behandelt werden sollen.
setOption(option, value)EmbeddedChartBuilderLegt erweiterte Optionen für dieses Diagramm fest.
setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)EmbeddedChartBuilderLegt die Position fest und ändert so, wo das Diagramm auf dem Tabellenblatt angezeigt wird.
setTransposeRowsAndColumns(transpose)EmbeddedChartBuilderLegt fest, ob die Zeilen und Spalten des Diagramms transponiert werden.

Detaillierte Dokumentation

addRange(range)

Fügt dem Diagramm, das von diesem Builder geändert wird, einen Bereich hinzu. Der Bereich wird nicht hinzugefügt, wenn er dem Diagramm bereits hinzugefügt wurde.

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);

Parameter

NameTypBeschreibung
rangeRangeDer hinzuzufügende Bereich.

Rückflug

EmbeddedChartBuilder – Dieser Builder zur Verkettung.


asAreaChart()

Legt den Diagrammtyp auf „AreaChart“ fest und gibt ein EmbeddedAreaChartBuilder zurück.

Rückflug

EmbeddedAreaChartBuilder – Ein Builder für ein Flächendiagramm.


asBarChart()

Legt den Diagrammtyp auf BarChart fest und gibt ein EmbeddedBarChartBuilder zurück.

Rückflug

EmbeddedBarChartBuilder: Ein Builder für ein Balkendiagramm.


asColumnChart()

Legt den Diagrammtyp auf „ColumnChart“ fest und gibt ein EmbeddedColumnChartBuilder zurück.

Rückflug

EmbeddedColumnChartBuilder – Ein Builder für ein Säulendiagramm.


asComboChart()

Legt den Diagrammtyp auf „ComboChart“ fest und gibt ein EmbeddedComboChartBuilder zurück.

Rückflug

EmbeddedComboChartBuilder – Ein Builder für ein Kombinationsdiagramm.


asHistogramChart()

Legt den Diagrammtyp auf HistogramChart fest und gibt ein EmbeddedHistogramChartBuilder zurück.

Rückflug

EmbeddedHistogramChartBuilder – Ein Builder für ein Histogramm.


asLineChart()

Legt den Diagrammtyp auf „LineChart“ fest und gibt ein EmbeddedLineChartBuilder zurück.

Rückflug

EmbeddedLineChartBuilder – Ein Builder für ein Liniendiagramm.


asPieChart()

Legt den Diagrammtyp auf „PieChart“ fest und gibt ein EmbeddedPieChartBuilder zurück.

Rückflug

EmbeddedPieChartBuilder: Ein Builder für ein Kreisdiagramm.


asScatterChart()

Legt den Diagrammtyp auf ScatterChart fest und gibt ein EmbeddedScatterChartBuilder zurück.

Rückflug

EmbeddedScatterChartBuilder: Ein Builder für ein Streudiagramm.


asTableChart()

Legt den Diagrammtyp auf „TableChart“ fest und gibt ein EmbeddedTableChartBuilder zurück.

Rückflug

EmbeddedTableChartBuilder: Ein Builder für ein Tabellendiagramm.


build()

Erstellt das Diagramm neu, um alle Änderungen zu berücksichtigen.

Bei dieser Methode wird das Diagramm nicht automatisch über der Tabelle gezeichnet. Ein neues Diagramm muss über sheet.insertChart(chart) eingefügt werden und ein vorhandenes Diagramm sollte über sheet.updateChart(chart) aktualisiert werden.

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);

Rückflug

EmbeddedChart: Das erstellte Diagramm, das noch der Tabelle hinzugefügt werden muss.


clearRanges()

Entfernt alle Bereiche aus dem Diagramm, das mit diesem Builder geändert wird.

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);

Rückflug

EmbeddedChartBuilder – Dieser Builder zur Verkettung.


getChartType()

Gibt den aktuellen Diagrammtyp zurück.

Rückflug

ChartType: Der Diagrammtyp.


getContainer()

Gibt das Diagramm ContainerInfo zurück, das angibt, wo das Diagramm im Tabellenblatt angezeigt wird.

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(),
);

Rückflug

ContainerInfo: Ein Objekt mit der Position des Diagrammcontainers.


getRanges()

Gibt eine Kopie der Liste der Bereiche zurück, die derzeit Daten für dieses Diagramm liefern. Verwenden Sie addRange(range) und removeRange(range), um diese Liste zu ändern.

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());
}

Rückflug

Range[]: Ein Array von Bereichen, die als Datenquelle für das zu erstellende Diagramm dienen.


removeRange(range)

Entfernt den angegebenen Bereich aus dem Diagramm, das mit diesem Builder geändert wird. Es wird kein Fehler ausgegeben, wenn der Bereich nicht in diesem Diagramm enthalten ist.

Der entfernte Bereich muss mit einem Bereich übereinstimmen, der über addRange(range) hinzugefügt wurde. Andernfalls wird das Diagramm nicht geändert. Mit dieser Methode können keine Werte teilweise aus einem Bereich entfernt werden.

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);

Parameter

NameTypBeschreibung
rangeRangeDer zu entfernende Bereich.

Rückflug

EmbeddedChartBuilder – Dieser Builder zur Verkettung.


setChartType(type)

Ändert den Diagrammtyp. Derzeit werden nicht alle eingebetteten Diagrammtypen unterstützt. ChartType ansehen.

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);

Parameter

NameTypBeschreibung
typeChartTypeDer Typ, in den dieses Diagramm geändert werden soll.

Rückflug

EmbeddedChartBuilder – Dieser Builder zur Verkettung.


setHiddenDimensionStrategy(strategy)

Legt die Strategie für ausgeblendete Zeilen und Spalten fest. Die Standardeinstellung ist 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);

Parameter

NameTypBeschreibung
strategyChartHiddenDimensionStrategyDie Strategie, die für ausgeblendete Zeilen und Spalten verwendet werden soll.

Rückflug

EmbeddedChartBuilder – Dieser Builder zur Verkettung.


setMergeStrategy(mergeStrategy)

Legt die Zusammenführungsstrategie fest, die verwendet werden soll, wenn mehrere Bereiche vorhanden sind. Bei MERGE_ROWS werden Zeilen zusammengeführt, bei MERGE_COLUMNS Spalten. Die Standardeinstellung ist 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);

Parameter

NameTypBeschreibung
mergeStrategyChartMergeStrategyDie zu verwendende Zusammenführungsstrategie.

Rückflug

EmbeddedChartBuilder – Dieser Builder zur Verkettung.


setNumHeaders(headers)

Legt die Anzahl der Zeilen oder Spalten des Bereichs fest, die als Überschriften behandelt werden sollen.

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);

Parameter

NameTypBeschreibung
headersIntegerDie Anzahl der Zeilen oder Spalten, die als Header behandelt werden sollen. Bei negativen Werten werden Header automatisch erkannt.

Rückflug

EmbeddedChartBuilder – Dieser Builder zur Verkettung.


setOption(option, value)

Legt erweiterte Optionen für dieses Diagramm fest. Eine Liste der verfügbaren Optionen finden Sie unter Diagrammkonfigurationsoptionen.

Bei dieser Methode wird nicht geprüft, ob die angegebene Option für diesen Diagrammtyp gültig ist oder ob der Wert das richtige Format bzw. die richtige Struktur hat.

In diesem Beispiel wird gezeigt, wie Sie den Titel ändern und eine Legende festlegen.

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();

Parameter

NameTypBeschreibung
optionStringDer Name der Option.
valueObjectDer Wert der Option.

Rückflug

EmbeddedChartBuilder – Dieser Builder zur Verkettung.


setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)

Legt die Position fest und ändert so, wo das Diagramm auf dem Tabellenblatt angezeigt wird. anchorRowPos und anchorColPos sind 1-basiert.

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);

Parameter

NameTypBeschreibung
anchorRowPosIntegerDie Oberseite des Diagramms wird in dieser Zeile verankert.
anchorColPosIntegerDie linke Seite des Diagramms ist in dieser Spalte verankert.
offsetXIntegerDie rechte obere Ecke des Diagramms wird um diese Anzahl von Pixeln versetzt.
offsetYIntegerDie linke untere Ecke des Diagramms wird um diese Anzahl von Pixeln versetzt.

Rückflug

EmbeddedChartBuilder – Dieser Builder zur Verkettung.


setTransposeRowsAndColumns(transpose)

Legt fest, ob die Zeilen und Spalten des Diagramms transponiert werden. Wenn true festgelegt ist, werden die Zeilen und Spalten vertauscht. Die Standardeinstellung ist 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);

Parameter

NameTypBeschreibung
transposeBooleanBei true werden die Zeilen und Spalten, die zum Erstellen des Diagramms verwendet werden, transponiert.

Rückflug

EmbeddedChartBuilder – Dieser Builder zur Verkettung.