Javascript 图表绘制

标签 javascript google-visualization

我正在使用 Google Charts API 集成到一个小组项目中。该项目是社交媒体趋势等的可视化工具包。

问题是,我已经编写了一个 PHP 程序来可视化饼图/条形图/折线图等。但我只能通过声明让它们工作:

var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
chart.draw(data, options);

可视化各个图表。但是我希望为可视化创建单独的文件。即 drawPie、drawLine、drawBar 等。这样它就可以使用我们创建的基于规则的数据类型工具,即百分比和位置可以绘制到饼图上。

无论如何,我在处理每个单独的文件时遇到了问题。下面是 drawPie.js 文件的代码:

<html>
<head>
    <!-- Load JSAPI -->
    <script type="text/javascript" src='https://www.google.com/jsapi?autoload={"modules":[{"name":"visualization","version":"1","packages":["corechart","table"]}]}'></script>

    <script type="text/javascript">
    //<!-- Load the API Package -->
    google.load('visualization', '1.0', {'packages':['controls']});
    //<!-- Callback when the Google Visualization API is Loaded -->
    google.setOnLoadCallback(drawDashboard);

    function drawPie() {

    //<!-- Create the Table -->
    var data = new google.visualization.DataTable();
    data.addColumn('string', 'location');
    data.addColumn('number', 'crimes');
    data.addRows([ <?php echo $data_for_chart; ?> ]);
    //<!-- Pass Options -->
    var options = {
    'legend': 'left',
    'title': 'Crimes (per day)',
    'is3D': 'True',
    'width':700,
    'height':300
    };

    //<!-- Instantiate and Draw Chart -->
    var chart = new google.visualization.PieChart(document.getElementById('pie_chart'));
    chart.draw(data, options);
    </script>
</head>
    <body>
        <style> pie_chart {margin: 0 auto; }</style>
        <div id="pie_chart"></div>

        <style>
            #left { margin-left: 15%; float: left; }
            #right { margin-right: 15%; float: right; }
            img { width: 200; height: 200;}
        </style>
    </body>

代码不显示图表。有谁知道我做错了什么? 提前致谢。

最佳答案

您正在加载错误的包。

google.load('visualization', '1.0', {'packages':['controls']}); 更改为 google.load('visualization', '1.0 ', {'packages':['corechart']}); 它应该可以工作。如果不是,那么除了这个(相对简单的)问题之外还有另一个问题。

关于Javascript 图表绘制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15524011/

相关文章:

javascript - 谷歌翻译的多个实例

javascript - 包含不检查 Javascript 数组输入的方法

javascript - 将 ajax 响应转换为 ol3 GML 层

javascript - 使用高阶函数合并相等的对象

javascript - Google Charts 中的动态数据加载

javascript - Google 可视化 API 示例中的 "Invalid JSON string"

javascript - 如何在 jQuery DataTable 的 AJAX 调用上传递额外参数

java - 具有异步数据 (RPC) 的 GWT Google 可视化

javascript - 如何将 RGBA 颜色添加到谷歌折线图?