Class DataViewDefinitionBuilder

Построитель определений представления данных

Построитель объектов Data View Definition .

Вот пример использования конструктора. Данные импортируются из электронной таблицы Google .

function doGet() {
  // This example creates two table charts side by side. One uses a data view
  // definition to restrict the number of displayed columns.

  // Get sample data from a spreadsheet.
  const dataSourceUrl = 'https://docs.google.com/spreadsheet/tq?range=A1%3AF' +
      '&key=0Aq4s9w_HxMs7dHpfX05JdmVSb1FpT21sbXd4NVE3UEE&gid=4&headers=-1';

  // Create a chart to display all of the data.
  const originalChart = Charts.newTableChart()
                            .setDimensions(600, 500)
                            .setDataSourceUrl(dataSourceUrl)
                            .build();

  // Create another chart to display a subset of the data (only columns 1 and
  // 4).
  const dataViewDefinition = Charts.newDataViewDefinition().setColumns([0, 3]);
  const limitedChart = Charts.newTableChart()
                           .setDimensions(200, 500)
                           .setDataSourceUrl(dataSourceUrl)
                           .setDataViewDefinition(dataViewDefinition)
                           .build();

  const htmlOutput = HtmlService.createHtmlOutput();
  const originalChartData = Utilities.base64Encode(
      originalChart.getAs('image/png').getBytes(),
  );
  const originalChartUrl =
      `data:image/png;base64,${encodeURI(originalChartData)}`;
  const limitedChartData = Utilities.base64Encode(
      limitedChart.getAs('image/png').getBytes(),
  );
  const limitedChartUrl =
      `data:image/png;base64,${encodeURI(limitedChartData)}`;
  htmlOutput.append('<table><tr><td>');
  htmlOutput.append(`<img border="1" src="${originalChartUrl}">`);
  htmlOutput.append('</td><td>');
  htmlOutput.append(`<img border="1" src="${limitedChartUrl}">`);
  htmlOutput.append('</td></tr></table>');
  return htmlOutput;
}

Методы

Метод Тип возврата Краткое описание
build() Data View Definition Создает и возвращает объект определения представления данных, созданный с помощью этого построителя.
set Columns(columns) Data View Definition Builder Устанавливает индексы столбцов для включения в представление данных, а также указывает информацию о ролевых столбцах.

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

build()

Создает и возвращает объект определения представления данных, созданный с помощью этого построителя.

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

Data View Definition — объект определения представления данных, созданный с помощью этого построителя.


set Columns(columns)

Устанавливает индексы столбцов для включения в представление данных, а также указывает информацию о ролевых столбцах. Это подмножество индексов столбцов относится к столбцам источника данных, из которого получено представление данных.

Роль столбца описывает назначение данных в этом столбце: например, столбец может содержать данные, описывающие текст всплывающей подсказки, аннотации к точкам данных или индикаторы неопределенности. Более подробную информацию см. в разделе «Роли таблиц данных» в документации Google Charts.

Предположим, что имеется электронная таблица со следующими данными в формате A1:C3:

'abc', 20, 'blue';
'def', 30, 'red';
'ghi', 40, 'orange';
Следующий код создает гистограмму, где каждая полоса имеет свой цвет. Цвета назначаются с помощью стиля «столбец ролей».
const COLUMN_SPEC = [
  0,  // categories
  1,  // counts
  {sourceColumn: 2, role: 'style'},
];

function roleColumnChart() {
  const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  const sheet = spreadsheet.getActiveSheet();
  const viewSpec =
      Charts.newDataViewDefinition().setColumns(COLUMN_SPEC).build();
  const chartBuilder = sheet.newChart()
                           .setChartType(Charts.ChartType.BAR)
                           .setDataViewDefinition(viewSpec)
                           .setOption('useFirstColumnAsDomain', true)
                           .setPosition(5, 1, 0, 0)
                           .setOption('hAxis', {title: 'Counts'})
                           .setOption('vAxis', {title: 'Categories'})
                           .addRange(sheet.getRange('A1:C3'));
  sheet.insertChart(chartBuilder.build());
}

Параметры

Имя Тип Описание
columns Object[] Массив индексов столбцов или описаний столбцов (объект), который нужно включить в представление данных. Описания столбцов определяют роль столбца. Таблица данных и перечисление столбцов представления данных начинаются с нуля.

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

Data View Definition Builder — этот построитель полезен для создания цепочек.