这是我的html代码。它包含一个div和一个外部javascript文件。如果我使用此外部js文件作为内部文件,则可以按照数据完美地绘制饼图,但是当我将其用作外部js文件时,其根本不显示任何内容。
代码.html
<html>
<head>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="externalscript.js"> </script>
</head> <body>
<div id="piechart" style="width: 900px; height: 500px;"></div>
</body></html>
externalscript.js
google.load("visualization", "1", {packages:["corechart"]});
var dataArray =[['Task', 'Hours per Day']];
var arr1=['Work','Eat','Commute','Watch TV','Sleep'];
var arr2=[11,2,2,2,7]; (var n=0; n < arr2.length; n++) {
dataArray.push([arr1[n], parseInt(arr2[n])]);
}
var data = new google.visualization.arrayToDataTable(dataArray);
var options = {
title: 'My Daily Activities'
};
var chart = new google.visualization.PieChart(document.getElementById('piechart'));
chart.draw(data, options);
最佳答案
你需要这个。
google.setOnLoadCallback(drawData);
google.load("visualization", "1", {packages:["corechart"]});
function drawData(){
var dataArray =[['Task', 'Hours per Day']];
var arr1=['Work','Eat','Commute','Watch TV','Sleep'];
var arr2=[11,2,2,2,7];
for(var n=0; n < arr2.length; n++) {
dataArray.push([arr1[n], parseInt(arr2[n])]);
}
var data = new google.visualization.arrayToDataTable(dataArray);
var options = {
title: 'My Daily Activities'
};
var chart = new google.visualization.PieChart(document.getElementById('piechart'));
chart.draw(data, options);
}
google.setOnLoadCallback(drawData);
<html>
<head>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
</head> <body>
<div id="piechart" style="width: 900px; height: 500px;"></div>
</body></html>
关于javascript - Google Visualization for drawing chart在外部Java脚本文件中不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27937282/