我的饼图(chartJs)没有出现

时间:2016-08-31 11:04:58

标签: javascript charts chart.js

我对图表js有一个小问题

我想画一个饼图,但是当我引用它时页面仍然是空的

我的代码如下,我对脚本标记的在线src有疑问:



<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>C.H.A.R.T.JS</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.2.2/Chart.min.js"></script>
</head>

<body>
<canvas id="myChart" width="400" height="400"></canvas>
<script>
$(function()
{
//$('body').css({'background':'red'});
var ctx = $("#myChart").get(0).getContext("2d");

var data = [
				{
					value :270,
					color :'Dodgerblue',
					heightLight: 'Lightskyblue',
					label :'Imed1'
				},
				{
					value :50,
					color :'Red',
					heightLight: 'Lightskyblue',
					label :'Imed2'
				},
				{
					value :40,
					color :'yellow',
					heightLight: 'Lightskyblue',
					label :'Imed3'
				}
		  ];
var pieChart = new Chart(ctx).Pie(data);
}); // fin jQuery


</script>

</body>
</html>
&#13;
&#13;
&#13;

提前谢谢

2 个答案:

答案 0 :(得分:2)

尝试使用文档中显示的此结构创建图表。

根据文档看起来您的结构有点偏差。 http://www.chartjs.org/docs/#doughnut-pie-chart

var ctx = document.getElementById("myChart").getContext("2d");

// For a pie chart
var myPieChart = new Chart(ctx,{
    type: 'pie',
    data: data,
    options: options
});`

var data = {
    labels: [
        "Red",
        "Blue",
        "Yellow"
    ],
    datasets: [
        {
            data: [300, 50, 100],
            backgroundColor: [
                "#FF6384",
                "#36A2EB",
                "#FFCE56"
            ],
            hoverBackgroundColor: [
                "#FF6384",
                "#36A2EB",
                "#FFCE56"
            ]
        }]
};

它默认响应,扩展到它的父母容器。您可以设置父容器最大宽度或画布本身,这将使其对较小的屏幕保持响应。

<style type="text/css">
    #myChart {
        max-width: 400;
    }
</style>

或者如果你根本不想让它响应,你可以将该选项设置为false。

options: {responsive: false}

答案 1 :(得分:2)

我认为您的数据结构使用chartJS1,但您的CDN是chartJS2 这就是为什么你只有错误消息。

var ctx = $("#myChart").get(0).getContext("2d");

var data = {
    labels: [
        "Red",
        "Blue",
        "Yellow"
    ],
    datasets: [
        {
            data: [300, 50, 100],
            backgroundColor: [
                "#FF6384",
                "#4BC0C0",
                "#FFCE56"
            ],
            label: 'My dataset'
        }]
};
var myPieChart = new Chart(ctx,{
    type: 'pie',
    data: data,
});