这是我的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/

10-11 12:38
查看更多