gpt4 book ai didi

google-apps-script - 如何将谷歌可视化图表嵌入电子表格

转载 作者:行者123 更新时间:2023-12-04 18:32:08 24 4
gpt4 key购买 nike

过去几天我一直在研究谷歌可视化,并成功地让它在单个网页上工作,或者使用内置的 insert -> chart creator 与电子表格一起工作。但是当我自己编辑 javascript 时,我希望这些数据在它来自的谷歌电子表格上仍然可见。我研究了应用程序脚本,我只能通过将其作为应用程序发布然后将我发送到一个完全不同的网页来使其工作。

有什么方法可以嵌入我的自定义 javascript,例如

function drawVisualization() {
// Create and populate the data table.
var data = google.visualization.arrayToDataTable([
['Region', 'count'],
['West', 8000],
['South', 7272],
['Northeast', 5333],
['Midwest', 4444],
['Southwest', 5714]
]);

// Create and draw the visualization.
new google.visualization.PieChart(document.getElementById('visualization')).
draw(data, {title:"Sales Per Region"});
}

进入谷歌文档或电子表格还是不受支持?

最佳答案

您可以使用 Charts Services并通过UiApp显示

饼图的示例 GS 代码

function getChart(dataTable){
var chartBuilder = Charts.newPieChart()
.setTitle('Sales Per Region')
.setDimensions(600, 500)
.set3D()
.setDataTable(dataTable);

return chartBuilder.build();
}

function showChart(){
var dataTable = Charts.newDataTable()
.addColumn(Charts.ColumnType.STRING, "Region")
.addColumn(Charts.ColumnType.NUMBER, "Count")
.addRow(['West', 8000])
.addRow(['South', 7272])
.addRow(['Northeast', 5333])
.addRow(['Midwest', 4444])
.addRow(['Southwest', 5714])
.build();

var chart = getChart(dataTable)

//insert into the spreadsheet
SpreadsheetApp.getActiveSheet().insertChart(chart)
}

为了在文档中显示你需要将最后一行替换为

  DocumentApp.getUi().showSidebar(UiApp.createApplication().add(chart))

但无论如何,这些图表将出现在对话框(或边栏)中,而不是出现在文档的内容中。在文档中,您可以通过转换为图像来插入它们,所以

    var chart = getChart(dataTable)
var imageChart = chart.getAs('image/jpeg');

并添加到内容中

  DocumentApp.getActiveDocument().getBody().appendImage(imageChart);

关于google-apps-script - 如何将谷歌可视化图表嵌入电子表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17287688/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com