Chartjs自定义比例数

时间:2015-09-29 11:40:46

标签: javascript jquery charts chart.js

ChartJS中是否有任何方法可以将0(Y轴刻度上的第一个数字)更改为美元符号? - > $

我设法自定义但我无法弄清楚如何将1个数字改为不同的符号。

var options = {
  pointDotRadius : 6,
  pointDotStrokeWidth : 2,
  datasetStrokeWidth : 12,
  scaleOverride: true,
  scaleSteps: 2,
  scaleStepWidth: 500,
  scaleStartValue: 0
}

我读过有关scaleLabel的内容。但是我无法理解它是如何工作的,甚至不知道我需要什么。或者我应该写scaleStartValue: null并将其添加为html和css? (我的意思是,如果ChartJS没有这样的功能,这就是解决方案)

有人可以帮帮我吗?如果要使用scaleLabel,请不要只写下答案,但我需要解释如何使用它。我未来的项目将需要它。

提前谢谢。

1 个答案:

答案 0 :(得分:1)

如果传递给scaleLabel函数的值是最小值,您可以跟踪最小值并将标签设置为$。

您的代码应如下所示:

var min = Infinity;
var myBarChart = new Chart(ctx).Bar(data, {
    scaleLabel: function(e) {
        if (Number(e.value) < min)
            min = Number(e.value);
        return (Number(e.value) === min) ? '$' : e.value;
    },
});

如果您确实知道自己的最低价值,那么您可以检查一下。

另见this Fiddle