Chart.js轴始终显示为零

时间:2017-01-18 04:00:30

标签: javascript bar-chart chart.js axis-labels

我正在使用Chart.js作为一个简单的条形图,其数据从mysql读取。不幸的是,y轴以随机数开始,通常高于某些条。因此,有些条形图不可见,但它们的值应该足够高:

bar chart showing only one of four bars

我已按建议here使用了scaleBeginAtZero: true - 选项,但无济于事:

var ctx = $("#mycanvas");
Chart.defaults.global.scaleBeginAtZero = true;

var barGraph = new Chart(ctx, {
    type: 'bar',
    data: chartdata,
    options: {
        scaleBeginAtZero: true
    }
});

有什么想法吗?完整的代码可用here

1 个答案:

答案 0 :(得分:4)

您可以使用以下代码。这样,条形图的Y轴从零开始。

options: {
        scales : {
            yAxes : [{
                ticks : {
                    beginAtZero : true
                }   
            }]
        }
    }

[<强>采样代码

var ctx = document.getElementById("myChart1");
var data = {
    labels: ["January", "February", "March", "April", "May", "June", "July"],
    datasets: [
        {
            label: "My First dataset",
            backgroundColor: [
                'rgba(255, 99, 132, 0.2)',
                'rgba(54, 162, 235, 0.2)',
                'rgba(255, 206, 86, 0.2)',
                'rgba(75, 192, 192, 0.2)',
                'rgba(153, 102, 255, 0.2)',
                'rgba(255, 159, 64, 0.2)'
            ],
            borderColor: [
                'rgba(255,99,132,1)',
                'rgba(54, 162, 235, 1)',
                'rgba(255, 206, 86, 1)',
                'rgba(75, 192, 192, 1)',
                'rgba(153, 102, 255, 1)',
                'rgba(255, 159, 64, 1)'
            ],
            borderWidth: 1,
            data: [65, 59, 80, 81, 56, 55, 40],
        }
    ]
};
    var myBarChart = new Chart(ctx, {
    type: 'bar',
    data: data,
    options: {
        scales : {
            yAxes : [{
                ticks : {
                    beginAtZero : true
                }   
            }]
        }
    }
});