图表Js +数组

时间:2017-05-05 10:04:34

标签: javascript charts

我正在努力开发一个使用chart.js的解决方案,但它不接受我对标签和dataset.label参数的值。

对于labels参数,我捕获数组中的值,然后将数组传递给参数,看看代码,这样你就可以看到我在做什么:



chartX.map(function (item) {
   return '"' + item + '"';
}).join(", ");

yAxis = chartY.join(', ');

console.log(chartX); // <--- ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"]

var myChart = new Chart(ctx, {
  type: 'bar',
  data: {
    labels: chartX,
    datasets: [{
      label: 'Försäjlning',
      data: yAxis
    }]
}
&#13;
&#13;
&#13;

chartX是一个数组,它在地图中形成格式。您可以在console.log(chartX)中看到结果。对于chartY数组,我只需加入&#39;,&#39;并将其保存在yAxis变量中。当我执行console.log时,这个也给了我预期的值。

问题是图表js似乎不喜欢数组,因为它没有显示任何内容,甚至没有显示错误消息。

有人遇到过类似的问题吗? 什么可能是错的?

Meny谢谢!!!

1 个答案:

答案 0 :(得分:3)

试试这个 这是你的HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.4.0/Chart.min.js"></script>
<canvas id="myChart" width="200" height="100"></canvas>

这是你的js

var arr=["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"];
var ctx = document.getElementById('myChart').getContext('2d');
var chart = new Chart(ctx, {
        // The type of chart we want to create
        type: 'bar',
        // The data for our dataset
        data: {
            labels:arr,
            datasets: [{
                label: "My First dataset",
                backgroundColor: 'rgb(255, 99, 132)',
                borderColor: 'rgb(255, 99, 132)',
                data: [0, 10, 5, 2, 20, 30, 45, 5, 2, 20, 30, 45],
            }]
        },

        // Configuration options go here
        options: {}
    });