使用谷歌的教程使用电子表格作为图表的数据我创建了以下内容。 Tutorial
<head>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load('current', {packages: ['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawSheetName() {
var query = new google.visualization.Query('https://docs.google.com/spreadsheets/d/15l3ZK45hv2ByOfkUiAKoKp-Z9a1u1-Q_rsLS7SqC51E/editgid=0&headers=1');
query.send(handleQueryResponse);
}
function handleQueryResponse(response) {
if (response.isError()) {
alert('Error in query: ' + response.getMessage() + ' ' + response.getDetailedMessage());
return;
}
var data = response.getDataTable();
var chart = new google.visualization.ColumnChart(document.getElementById('chart_div'));
chart.draw(data, { height: 400 });
}
}}
</script>
</head>
<body>
<!-- Identify where the chart should be drawn. -->
<div id="chart_div"/>
</body>
然而,没有图表结算,我已将链接公开。 如果我分享链接,则为https://docs.google.com/spreadsheets/d/15l3ZK45hv2ByOfkUiAKoKp-Z9a1u1-Q_rsLS7SqC51E/edit?usp=sharing
关注文档并且不确定我的错误在哪里。
这个SO更多关于drive-sdk的回答是从新文件的脚本创建密钥,我真的不明白它和核如何获得现有电子表格的正确URL。
如果可以获得一个合并的答案来获得正确的表格URL,那就太棒了。
答案 0 :(得分:1)
this你想要实现的目标是什么?
如果是,您可以查看其工作原理here。
修改强>
由于我在评论中注意到您要查询电子表格而不使用整个电子表格,因此这是查询的逻辑。
首先,这些是要查询的网址的基本组成部分:
var BASE_URL = "https://docs.google.com/a/google.com/spreadsheets/d/";
var SS_KEY = "stringSS_Key";
var BASE_QUERY = "/gviz/tq?tq=";
var partialUrl = BASE_URL + SS_KEY + BASE_QUERY;
请注意BASE_QUERY
变量
网址的第一位位于partialUrl
变量中。
然后,您需要使用谷歌提供的Query Language。一个例子是:
var queryToRun = 'select dept, sum(salary) group by dept';
然后,您需要在其上调用encodeURIComponent()
,并将其添加到部分网址。然后最终的URL变为
var finalUrl = partialUrl + encodeURIComponent(queryToRun);
只有这样你才能运行google.visualiation.query,因为我怀疑你打算这样做。
var query = new google.visualization.Query(finalUrl);