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 will render 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
// will not be removed, and will 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 — этот построитель для создания цепочек