在 google sheet 中插入图表时出错
Error inserting chart in google sheet
我有以下代码可以创建条形图
var chart = Charts.newBarChart()
.setDataTable(dataTable)
.setTitle("Rain per month");
sheet.insertChart(chart.build());
不幸的是,我收到一条错误消息 "Cannot find method insertChart(Chart)"。
看来 sheet.insertChart 函数必须采用 embeddedChart。
如何将我的图表变成嵌入图表以便 insertChart 函数使用它?
问候
克鲁兹
您使用的方法是将图表添加到 UiApp。
要将图表添加到 google sheet,您可以使用以下语法:
var chart = sheet.newChart()
.setChartType(Charts.ChartType.BAR)
.addRange(sheet.getRange("A1:B4"))
.setPosition(5, 5, 0, 0)
.setOption("title", "Dynamic Chart")
.build();
sheet.insertChart(chart);
此代码取自 Google 应用程序脚本文档中的 here。
另外,DataTable class is used to create charts when adding charts to html or the UiApp。如果您想将图表添加到价差sheet,就好像用户单击了插入 > 图表,您将不得不使用getRange
来绘制数据。如果您从多个来源提取数据,我建议您合并数据并将其添加到 spreadsheet 中的某处,使用 sheet.getRange().setValue()
.
如果您想从单独的 google 传播sheet 中提取数据,那么您可以这样做:
//SpreadsheetApp.openByUrl.openById(inset appropriate id here) would work as well
var externalSheets = SpreadsheetApp.openByUrl(insert appropriate url here).getSheets();
var chart = sheet.newChart()
.setChartType(Charts.ChartType.BAR)
.addRange(sheets[insert appropriate sheet index here].getRange("A1:B4"))
.setPosition(5, 5, 0, 0)
.setOption("title", "Dynamic Chart")
.build();
sheet.insertChart(chart);
我有以下代码可以创建条形图
var chart = Charts.newBarChart()
.setDataTable(dataTable)
.setTitle("Rain per month");
sheet.insertChart(chart.build());
不幸的是,我收到一条错误消息 "Cannot find method insertChart(Chart)"。
看来 sheet.insertChart 函数必须采用 embeddedChart。
如何将我的图表变成嵌入图表以便 insertChart 函数使用它?
问候 克鲁兹
您使用的方法是将图表添加到 UiApp。 要将图表添加到 google sheet,您可以使用以下语法:
var chart = sheet.newChart()
.setChartType(Charts.ChartType.BAR)
.addRange(sheet.getRange("A1:B4"))
.setPosition(5, 5, 0, 0)
.setOption("title", "Dynamic Chart")
.build();
sheet.insertChart(chart);
此代码取自 Google 应用程序脚本文档中的 here。
另外,DataTable class is used to create charts when adding charts to html or the UiApp。如果您想将图表添加到价差sheet,就好像用户单击了插入 > 图表,您将不得不使用getRange
来绘制数据。如果您从多个来源提取数据,我建议您合并数据并将其添加到 spreadsheet 中的某处,使用 sheet.getRange().setValue()
.
如果您想从单独的 google 传播sheet 中提取数据,那么您可以这样做:
//SpreadsheetApp.openByUrl.openById(inset appropriate id here) would work as well
var externalSheets = SpreadsheetApp.openByUrl(insert appropriate url here).getSheets();
var chart = sheet.newChart()
.setChartType(Charts.ChartType.BAR)
.addRange(sheets[insert appropriate sheet index here].getRange("A1:B4"))
.setPosition(5, 5, 0, 0)
.setOption("title", "Dynamic Chart")
.build();
sheet.insertChart(chart);