1

beginAtZero我在使用 Chart.js 时遇到问题,因为即使我设置了参数,条形也不是从零开始的。

我为代码的正确位置尝试了多种方法,但它似乎不起作用。

有谁知道如何解决我的问题?

这是代码:

var chartdata = {
  labels: answer,
  datasets: [{
      label: 'Count',
      backgroundColor: 'rgba(200, 200, 200, 0.75)',
      borderColor: 'rgba(200, 200, 200, 0.75)',
      hoverBackgroundColor: 'rgba(200, 200, 200, 1)',
      hoverBorderColor: 'rgba(200, 200, 200, 1)',
      data: count
    }
  ]
};

var options = {
  scales: {
    yAxes: [{
      ticks: {
        beginAtZero: true
      }
    }]
  }
};

var ctx = $("#mycanvas");

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

1 回答 1

2

看起来您使用的是 Chart.js v1 而不是 v2。

首先,将您的 Chart.js 代码更新为 v2,最好是最新版本

然后,更改以下代码:

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

至:

var barGraph = Chart.Bar(ctx, {
  data: chartdata,
  options: options
});

beginAtZero: true然后应该按预期工作。

工作 JSFiddle:https ://jsfiddle.net/ko54hp6n/


作为 的替代方案beginAtZero: true,您还可以使用min: 0ticks 配置选项将条形轴从零开始:

var options = {
  scales: {
    yAxes: [{
      ticks: {
        min: 0
      }
    }]
  }
}

工作 JSFiddle:https ://jsfiddle.net/ko54hp6n/1/

于 2017-11-28T05:48:12.080 回答