Class DataViewDefinitionBuilder

DataViewDefinitionBuilder

Построитель объектов DataViewDefinition .

Вот пример использования конструктора. Данные импортируются из электронной таблицы 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.
  var 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.
  var originalChart = Charts.newTableChart()
      .setDimensions(600, 500)
      .setDataSourceUrl(dataSourceUrl)
      .build();

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

  var htmlOutput = HtmlService.createHtmlOutput();
  var originalChartData = Utilities.base64Encode(originalChart.getAs('image/png').getBytes());
  var originalChartUrl = "data:image/png;base64," + encodeURI(originalChartData);
  var limitedChartData = Utilities.base64Encode(limitedChart.getAs('image/png').getBytes());
  var 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() DataViewDefinition Создает и возвращает объект определения представления данных, созданный с помощью этого построителя.
setColumns(columns) DataViewDefinitionBuilder Устанавливает индексы столбцов для включения в представление данных, а также указывает информацию о ролевых столбцах.

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

build()

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

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

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


setColumns(columns)

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

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

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

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

function roleColumnChart() {
  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = spreadsheet.getActiveSheet();
  var viewSpec = Charts.newDataViewDefinition()
      .setColumns(COLUMN_SPEC)
      .build();
  var 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[] Массив индексов столбцов или описаний столбцов (объект), который нужно включить в представление данных. Описания столбцов определяют роль столбца. Таблица данных и перечисление столбцов представления данных начинаются с нуля.

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

DataViewDefinitionBuilder — этот построитель, полезный для создания цепочек.