我正在尝试使用 Google Apps脚本在 Google文档中插入雷达图。该图表位于 Google表格中,但在Google文档中却非常难看。
我在SO上找到了一篇帖子,建议直接使用Apps Script创建图表,但这对我也不起作用。
如果有人可以指出进一步的setOptions()
,我可以用来达到理想的效果。
这是我的代码:
function createChart() {
var sheet = SpreadsheetApp.openById("SPREADSHEET_ID").getSheetByName("Sheet1");
var chart = sheet.newChart();
chart
.addRange(sheet.getRange("K2:K7"))
.addRange(sheet.getRange("G2:G7"))
.addRange(sheet.getRange("I2:J7"))
.setChartType(Charts.ChartType.RADAR)
.setNumHeaders(1)
.setOption("useFirstColumnAsDomain", true)
.setOption("colors",["#e0296c", "#0000ff", "#ff9900"])
.setOption('width', 700)
.setOption('height', 600)
.setOption('legend', {position: 'bottom', textStyle: {fontSize: 12}})
.setPosition(1,1,0,0)
.setOption('vAxis.gridlines.count', 4)
.setOption('series', { 0: { lineWidth: 1, pointSize: 5},
1: { lineDashStyle: [4, 4] },
2: { lineDashStyle: [4, 4] }
})
.setOption('hAxis.format',{format: 'percent'})
chart = chart.build();
sheet.insertChart(chart);
var doc = DocumentApp.openById("DOC_ID");
var body = doc.getBody();
var chartBlob = chart.getAs('image/png').copyBlob();
body.appendImage(chartBlob);
}
这是我到目前为止所取得的成就:
答案 0 :(得分:0)
使用内置的Google文档功能,可以链接Google表格中的图表。详细步骤在官方的G Suite文档编辑器文档中,但核心步骤是:
点击插入,然后点击图表,然后点击来自表格。
以上是因为您已经发现,将图表转换为PNG的结果图像看起来并不相同。另一方面,电子表格服务包含Class Embedded Chart,但文档服务不包含。
您可以尝试通过使用新的EmdeddedObject从Docs API中使用Documents Advanced Service。
参考