如何在我的Google电子表格脚本中以编程方式创建Range类?

时间:2012-08-21 10:51:40

标签: google-apps-script google-sheets

所以我有这个谷歌脚本,我想用来在我的电子表格中创建图表。我基本上以编程方式创建内容(使用电子表格数据),然后我想绘制。我以前的方式是通过填充其中一张包含所有数据然后使用该数据进行绘制,但我希望跳过该步骤并将javascript数组直接输入到我的addRange方法中。

所以我有一个创建新图表的脚本:

  // insert the scenario chart
  var scenarioChartBuilder = sheet.newChart();
  scenarioChartBuilder.setPosition(5, 6, 5, 5)
    .setChartType(Charts.ChartType.AREA)
    .addRange(rangeObject);
  sheet.insertChart(scenarioChartBuilder.build());

问题是;我如何制作“rangeObject”,因为我只有javascript数组,并且不想使用实际的电子表格数据?或者是否有另一种方法来绘制实际上不在电子表格中的数据?

1 个答案:

答案 0 :(得分:2)

范围数据实际上只是一个多维数组。 所以rangeObject可以定义为;

  

var rangeobject = [[data,data,data],[data,data,data]];

第一个数组表示行,第二个数组表示列数据。 以编程方式,你可以获得像;

这样的数据
  

var dataFirstRowSecondColumn = rangedata [0] [1]; // 0索引数组!

因此,添加范围只是为了传递多维数组(包含内容数据)。 但要注意;-)当添加到图表时,我认为你必须要记住,每列只包含有效的数据类型。

在代码中,您可以直接使用我的第一个示例。