Chart.js条形图 - 如何从0开始绘制条形图

时间:2015-06-03 06:50:51

标签: chart.js

我想绘制从零开始延伸的条形图,以便正数向上(正常),但负数从零向下增长。我得到的所有数字都是从负基线开始的。

6 个答案:

答案 0 :(得分:32)

其他答案对我不起作用。但是,我确实找到了另一个适合我的配置选项。

var options = {
    // All of my other bar chart option here
    scales: {
        yAxes: [{
            ticks: {
                beginAtZero:true
            }
        }]
    }
}
var ctx = document.getElementById("myChart").getContext("2d");
var myBarChart = new Chart(ctx).Bar(data, options);

将此传递给我的图表选项会给我一个条形图,其比例从0开始。

答案 1 :(得分:2)

我认为你正在寻找类似的东西

Fiddle

<强> HTML

iso.Isolate.kill()

<强> JS

<canvas id="myChart" width="500" height="250"></canvas>

答案 2 :(得分:1)

您可以将d3.js用于预期的行为。 Here是一篇很好的帖子。 要么 你也可以按照article调整plotkit图表来显示向下的负数吧。

为了使它与chart.js一起使用(虽然不建议,因为Chart.js不支持)你可以使用这个github pull而不是使用全局配置对象,即设置:

Chart.defaults.global.responsive = true;
Chart.defaults.global.scaleBeginAtZero = false;
Chart.defaults.global.barBeginAtOrigin = false,
Chart.defaults.global.animation = false;

使用单独的配置对象并将其传递给图表构造函数:

var chartOptions = {
    responsive:true,
    scaleBeginAtZero:false,
    barBeginAtOrigin:true
}
var chartInstance = new Chart(ctx).Bar(myChartData, chartOptions);

答案 3 :(得分:1)

我使用Chart.js版本2.0.2,这可以使用yAxes.min来实现,如果图表为空,则可以使用yAxes.suggestedMax

示例:

options:{
    .
    .
    .
    scales{
        yAxes:[{
            min:0,
            //this value will be overridden if the scale is greater than this value
            suggestedMax:10
        }]
    }

答案 4 :(得分:1)

public barChartOptions: any = {
    scales: {
        yAxes: [{
            ticks: {
                beginAtZero: true}
            }]
        },
     }

答案 5 :(得分:0)

使用如下所示的从零开始:

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