我正在尝试在我的网站上显示Google Visualization GeoMap。我在Code Playground中创建了代码,并将其保存为我的网站中的Apps脚本。页面将完成加载过程,但不会显示任何内容。
以下是代码:
function doGet() {
var app = UiApp.createApplication();
function drawVisualization() {
var query = new google.visualization.Query(
'https://docs.google.com/a/mantisnetworks.co/spreadsheet/ccc?key=0AoNHsySj5NxGdGt0dmxva3ZPb3dLYVpVZ2Z4TThNbGc&usp=drive_web#gid=0');
query.send(handleQueryResponse);
}
function handleQueryResponse(response){
if(response.isError()){
alert('Error in Query:' + response.getMessage()+''+response.getDetailedMessage());
return;
}
var data = response.getDataTable();
var geochart = new google.visualization.GeoMap(document.getElementById('visualization'));
var options = {};
options['dataMode'] = 'regions';
options['resolution'] = 'provinces';
options['region'] = 'LS';
options['width'] = '600px';
options['height'] = '300px';
geochart.draw(data, options);
}
app.close();
return app;
}
答案 0 :(得分:2)
Google Apps脚本基于Javascript,但作为服务器端环境,它无法访问所有客户端javascript结构。例如,Google可视化提供为Charts Service。使用该服务,您将获得对大部分可视化API的支持。但是,您将找不到GeoMap。
您在问题中提供的代码需要进行大量重新设计才能在Google Apps脚本中正常运行。从图表服务页面上给出的示例开始,然后适应您的情况。
Google Apps脚本中还有另一种选择,即使用HTML服务“托管”包含“真实”javascript的HTML页面。嵌入在HTML页面中的Javascript可以在客户端浏览器上运行,因此您在操场中制作的示例可以正常工作。此选项的完全失效超出了您的问题范围,但如果您对此感兴趣,可以先扫描previous questions about the HTML Service。