Class EmbeddedChartBuilder

Встроенный конструктор диаграмм

Конструктор используется для редактирования Embedded Chart . Изменения, внесённые в диаграмму, не сохраняются до тех пор, пока для перестроенной диаграммы не будет вызван метод Sheet.updateChart(chart) .

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

Методы

Метод Тип возврата Краткое описание
add Range(range) Embedded Chart Builder Добавляет диапазон к диаграмме, которую изменяет этот конструктор.
as Area Chart() Embedded Area Chart Builder Устанавливает тип диаграммы как AreaChart и возвращает Embedded Area Chart Builder .
as Bar Chart() Embedded Bar Chart Builder Устанавливает тип диаграммы на BarChart и возвращает Embedded Bar Chart Builder .
as Column Chart() Embedded Column Chart Builder Устанавливает тип диаграммы как ColumnChart и возвращает Embedded Column Chart Builder .
as Combo Chart() Embedded Combo Chart Builder Устанавливает тип диаграммы на ComboChart и возвращает Embedded Combo Chart Builder .
as Histogram Chart() Embedded Histogram Chart Builder Устанавливает тип диаграммы как HistogramChart и возвращает Embedded Histogram Chart Builder .
as Line Chart() Embedded Line Chart Builder Устанавливает тип диаграммы как LineChart и возвращает Embedded Line Chart Builder .
as Pie Chart() Embedded Pie Chart Builder Устанавливает тип диаграммы как PieChart и возвращает Embedded Pie Chart Builder .
as Scatter Chart() Embedded Scatter Chart Builder Устанавливает тип диаграммы как ScatterChart и возвращает Embedded Scatter Chart Builder .
as Table Chart() Embedded Table Chart Builder Устанавливает тип диаграммы на TableChart и возвращает Embedded Table Chart Builder .
build() Embedded Chart Создает диаграмму, отражающую все внесенные в нее изменения.
clear Ranges() Embedded Chart Builder Удаляет все диапазоны из диаграммы, которую изменяет этот конструктор.
get Chart Type() Chart Type Возвращает текущий тип диаграммы.
get Container() Container Info Возвращает Container Info диаграммы, которая определяет место расположения диаграммы на листе.
get Ranges() Range[] Возвращает копию списка диапазонов, которые в данный момент предоставляют данные для этой диаграммы.
remove Range(range) Embedded Chart Builder Удаляет указанный диапазон из диаграммы, которую изменяет этот конструктор.
set Chart Type(type) Embedded Chart Builder Изменяет тип диаграммы.
set Hidden Dimension Strategy(strategy) Embedded Chart Builder Задает стратегию, используемую для скрытых строк и столбцов.
set Merge Strategy(mergeStrategy) Embedded Chart Builder Задает стратегию слияния, используемую при наличии более одного диапазона.
set Num Headers(headers) Embedded Chart Builder Задает количество строк или столбцов диапазона, которые следует рассматривать как заголовки.
set Option(option, value) Embedded Chart Builder Устанавливает расширенные параметры для этой диаграммы.
set Position(anchorRowPos, anchorColPos, offsetX, offsetY) Embedded Chart Builder Задает положение, изменяя место отображения диаграммы на листе.
set Transpose Rows And Columns(transpose) Embedded Chart Builder Устанавливает, транспонированы ли строки и столбцы диаграммы.

Подробная документация

add Range(range)

Добавляет диапазон к диаграмме, которую изменяет этот конструктор. Не добавляет диапазон, если он уже добавлен к диаграмме.

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

Параметры

Имя Тип Описание
range Range Диапазон для добавления.

Возвращаться

Embedded Chart Builder — этот конструктор предназначен для создания цепочек.


as Area Chart()

Устанавливает тип диаграммы как AreaChart и возвращает Embedded Area Chart Builder .

Возвращаться

Embedded Area Chart Builder — конструктор для построения площадных диаграмм.


as Bar Chart()

Устанавливает тип диаграммы на BarChart и возвращает Embedded Bar Chart Builder .

Возвращаться

Embedded Bar Chart Builder — конструктор столбчатых диаграмм.


as Column Chart()

Устанавливает тип диаграммы как ColumnChart и возвращает Embedded Column Chart Builder .

Возвращаться

Embedded Column Chart Builder — конструктор столбчатых диаграмм.


as Combo Chart()

Устанавливает тип диаграммы на ComboChart и возвращает Embedded Combo Chart Builder .

Возвращаться

Embedded Combo Chart Builder — конструктор для комбинированных диаграмм.


as Histogram Chart()

Устанавливает тип диаграммы как HistogramChart и возвращает Embedded Histogram Chart Builder .

Возвращаться

Embedded Histogram Chart Builder — конструктор для построения гистограмм.


as Line Chart()

Устанавливает тип диаграммы как LineChart и возвращает Embedded Line Chart Builder .

Возвращаться

Embedded Line Chart Builder — конструктор для линейных диаграмм.


as Pie Chart()

Устанавливает тип диаграммы как PieChart и возвращает Embedded Pie Chart Builder .

Возвращаться

Embedded Pie Chart Builder — конструктор круговых диаграмм.


as Scatter Chart()

Устанавливает тип диаграммы как ScatterChart и возвращает Embedded Scatter Chart Builder .

Возвращаться

Embedded Scatter Chart Builder — конструктор для диаграмм рассеяния.


as Table Chart()

Устанавливает тип диаграммы на TableChart и возвращает Embedded Table Chart Builder .

Возвращаться

Embedded Table Chart Builder — конструктор для создания табличных диаграмм.


build()

Создает диаграмму, отражающую все внесенные в нее изменения.

Этот метод не отображает диаграмму автоматически поверх электронной таблицы. Новая диаграмма должна быть вставлена с помощью метода sheet.insertChart(chart) , а существующая диаграмма должна быть обновлена с помощью метода 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);

Возвращаться

Embedded Chart — созданная диаграмма, которую еще необходимо добавить в электронную таблицу.


clear Ranges()

Удаляет все диапазоны из диаграммы, которую изменяет этот конструктор.

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

Возвращаться

Embedded Chart Builder — этот конструктор предназначен для создания цепочек.


get Chart Type()

Возвращает текущий тип диаграммы.

Возвращаться

Chart Type — Тип диаграммы.


get Container()

Возвращает Container Info диаграммы, которая определяет место расположения диаграммы на листе.

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

Возвращаться

Container Info — объект, содержащий позицию контейнера диаграммы.


get Ranges()

Возвращает копию списка диапазонов, из которых в данный момент поступают данные для этой диаграммы. Для изменения этого списка используйте add Range(range) и remove Range(range) .

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

Возвращаться

Range[] — Массив диапазонов, которые служат источником данных для построения диаграммы.


remove Range(range)

Удаляет указанный диапазон из диаграммы, которую редактирует этот конструктор. Не выдаёт ошибку, если диапазон отсутствует в этой диаграмме.

Удаляемый диапазон должен совпадать с диапазоном, добавленным с помощью add Range(range) ; в противном случае изменения в диаграмму не вносятся. Этот метод нельзя использовать для частичного удаления значений из диапазона.

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

Параметры

Имя Тип Описание
range Range Диапазон для удаления.

Возвращаться

Embedded Chart Builder — этот конструктор предназначен для создания цепочек.


set Chart Type(type)

Изменяет тип диаграммы. В настоящее время поддерживаются не все типы встроенных диаграмм. См. Chart Type .

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

Параметры

Имя Тип Описание
type Chart Type Тип, в который следует изменить данную диаграмму.

Возвращаться

Embedded Chart Builder — этот конструктор предназначен для создания цепочек.


set Hidden Dimension Strategy(strategy)

Задаёт стратегию для скрытых строк и столбцов. По умолчанию — 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);

Параметры

Имя Тип Описание
strategy Chart Hidden Dimension Strategy Стратегия, используемая для скрытых строк и столбцов.

Возвращаться

Embedded Chart Builder — этот конструктор предназначен для создания цепочек.


set Merge Strategy(mergeStrategy)

Задаёт стратегию слияния, используемую при наличии нескольких диапазонов. Если MERGE_ROWS , объединяются строки; если MERGE_COLUMNS , объединяются столбцы. Значение по умолчанию — 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);

Параметры

Имя Тип Описание
merge Strategy Chart Merge Strategy Стратегия слияния, которую следует использовать.

Возвращаться

Embedded Chart Builder — этот конструктор предназначен для создания цепочек.


set Num Headers(headers)

Задает количество строк или столбцов диапазона, которые следует рассматривать как заголовки.

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

Параметры

Имя Тип Описание
headers Integer Количество строк или столбцов, которые следует рассматривать как заголовки. Отрицательные значения приводят к автоматическому определению заголовков.

Возвращаться

Embedded Chart Builder — этот конструктор предназначен для создания цепочек.


set Option(option, value)

Задаёт расширенные параметры для этой диаграммы. Список доступных параметров см. в разделе «Параметры конфигурации диаграммы» .

Этот метод не проверяет, является ли указанный вами параметр допустимым для данного типа диаграммы, а также имеет ли значение правильный формат/структуру.

В этом примере показано, как изменить заголовок и установить легенду.

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

Параметры

Имя Тип Описание
option String Название опции.
value Object Стоимость опциона.

Возвращаться

Embedded Chart Builder — этот конструктор предназначен для создания цепочек.


set Position(anchorRowPos, anchorColPos, offsetX, offsetY)

Задает положение, изменяя место отображения диаграммы на листе. anchor Row Pos и anchor Col Pos индексируются на 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);

Параметры

Имя Тип Описание
anchor Row Pos Integer Верхняя часть диаграммы закреплена в этой строке.
anchor Col Pos Integer Левая сторона диаграммы закреплена в этом столбце.
offsetX Integer Верхний правый угол диаграммы смещен на такое количество пикселей.
offsetY Integer Нижний левый угол диаграммы смещен на такое количество пикселей.

Возвращаться

Embedded Chart Builder — этот конструктор предназначен для создания цепочек.


set Transpose Rows And Columns(transpose)

Устанавливает, транспонированы ли строки и столбцы диаграммы. Если установлено значение true , строки и столбцы меняются местами. Значение по умолчанию — 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);

Параметры

Имя Тип Описание
transpose Boolean Если true , строки и столбцы, используемые для построения диаграммы, транспонируются.

Возвращаться

Embedded Chart Builder — этот конструктор предназначен для создания цепочек.