使用自定义标签创建嵌入图表

时间:2015-11-03 11:06:50

标签: google-apps-script google-sheets google-visualization

我想使用Google Apps脚本电子表格服务中的EmbeddedChart创建折线图。我在电子表格的A和B列中有一组(x,y)坐标,我想用Apps脚本绘制图表中的相应行。

function newChart() {
   var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Page 2");
   var chartBuilder = sheet.newChart();
   chartBuilder.addRange(sheet.getRange("A1:B30"))
       .setChartType(Charts.ChartType.LINE);
   sheet.insertChart(chartBuilder.build());
 }

此功能的问题在于它创建了一个包含两行而不是一行的图表。为了获得正确的图表,我必须手动编辑高级设置,并选中选项"使用列A作为标签"。

是否可以使用Apps脚本指定此设置?

1 个答案:

答案 0 :(得分:2)

自动解释图表的数据表以确定每列执行的角色。 ref 如果您的第一列包含文本,则其角色将为“domain”,而“域列指定沿图表主轴的标签。”

您尚未在问题中分享您的数据,但可以肯定A列包含数字或日期。当列A包含文本时,以下是代码生成的内容:

screenshot

所以问题是,可以在嵌入式图表中指定列的角色吗?不幸的是,不,它不能。

作为解决方法,您可以将A列中的数值或日期值复制到另一列作为文本。