Class DataViewDefinitionBuilder

DataViewDefinitionBuilder

DataViewDefinition nesne oluşturucu.

Aşağıda, oluşturucunun kullanımına dair bir örnek verilmiştir. Veriler içe aktarılan Google e-tablosundan karşılaştırabilirsiniz.

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

Yöntemler

YöntemDönüş türüKısa açıklama
build()DataViewDefinitionBu oluşturucu kullanılarak derlenen veri görünümü tanımı nesnesini oluşturur ve döndürür.
setColumns(columns)DataViewDefinitionBuilderVeri görünümüne dahil edilecek sütunların dizinlerini ve rol sütununu belirtir. ekleyebilirsiniz.

Ayrıntılı belgeler

build()

Bu oluşturucu kullanılarak derlenen veri görünümü tanımı nesnesini oluşturur ve döndürür.

Return

DataViewDefinition — Bu oluşturucu kullanılarak oluşturulan bir veri görünümü tanımı nesnesi.


setColumns(columns)

Veri görünümüne dahil edilecek sütunların dizinlerini ve rol sütununu belirtir. ekleyebilirsiniz. Sütun dizinlerinin bu alt kümesi, veri görünümü türetilir.

Sütun rolü, söz konusu sütundaki verilerin amacını açıklar. Örneğin bir sütun ipucu metnini, veri noktası ek açıklamalarını veya belirsizlik göstergelerini açıklayan verileri muhafazaya alma. Daha fazla görmek için Google Grafikler'deki DataTable Rolleri'ne belgelerinden faydalanabilirsiniz.

A1:C3'te aşağıdaki verilerin bulunduğu bir elektronik tabloyu varsayarsak:

"abc", 20, "blue"
"def", 30, "red"
"ghi", 40, "orange"
. Aşağıdaki kod, her çubuğun farklı renkte olduğu bir çubuk grafik oluşturur. Renkler: "rol sütunu" aracılığıyla atanır.
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());
};

Parametreler

AdTürAçıklama
columnsObject[]Dahil edilecek sütun dizinleri veya sütun açıklamaları (nesne) dizisi veri görünümündedir. Sütun açıklamaları bir sütun rolünü tanımlar. Veri tablosu ve veri görüntüleme sütunlarının numaralandırması sıfır tabanlıdır.

Return

DataViewDefinitionBuilder — Zincirleme işlemleri için kullanışlı bu oluşturucu.