Class DataViewDefinitionBuilder

Criadordedefiniçãodedados

Builder para objetos DataViewDefinition.

Confira um exemplo de uso do builder. Os dados são importados de uma planilha do 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;
}

Métodos

MétodoTipo de retornoBreve descrição
build()DataViewDefinitionCria e retorna o objeto de definição de visualização de dados que foi criado usando esse builder.
setColumns(columns)DataViewDefinitionBuilderDefine os índices das colunas a serem incluídas na visualização de dados, além de especificar informações de coluna de função.

Documentação detalhada

build()

Cria e retorna o objeto de definição de visualização de dados que foi criado usando esse builder.

Retornar

DataViewDefinition: um objeto de definição de visualização de dados criado usando esse builder.


setColumns(columns)

Define os índices das colunas a serem incluídas na visualização de dados, além de especificar informações de coluna de função. Esse subconjunto de índices de coluna se refere às colunas da fonte de dados de que a visualização de dados é derivada.

O papel de uma coluna descreve a finalidade dos dados nela. Por exemplo, uma coluna pode conter dados que descrevem o texto da dica, anotações de pontos de dados ou indicadores de incerteza. Para mais detalhes, consulte Papéis de tabela de dados na documentação do Google Charts.

Suponha que uma planilha tenha os seguintes dados em A1:C3:

'abc', 20, 'blue';
'def', 30, 'red';
'ghi', 40, 'orange';
O código abaixo cria um gráfico de barras em que cada barra tem uma cor diferente. As cores são atribuídas por uma "coluna de função" de estilo.
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());
}

Parâmetros

NomeTipoDescrição
columnsObject[]Uma matriz de índices de coluna ou descrições de coluna (um objeto) para incluir na visualização de dados. As descrições de coluna definem uma função de coluna. A tabela de dados e a enumeração para colunas de visualização de dados são baseadas em zero.

Retornar

DataViewDefinitionBuilder: esse builder é útil para encadeamento.