【发布时间】:2019-05-14 22:46:16
【问题描述】:
我有一个 chart.js 图表对象 myBarChart 最初使用选项对象创建
options={
scaleOverride : true,
scaleSteps : ymax,
scaleStepWidth : 1,
scaleStartValue : 0,
...
}
其中ymax 被计算为充当“建议最大值”。
用户通过点击条形图向图表添加数据;更新函数访问数据为
myBarChart.datasets[0].bars[i].value = newValue[i]
(循环遍历所有直方图箱)。这个模式,连同documentation,表明我应该能够访问这些选项
myBarChart.options.scaleSteps = newYmax;
myBarChart.update();
为了在用户添加数据时更改 y 轴的最大值。但是,这不起作用。当用户添加的数据超过原来的ymax时,数据会被记录下来,但是y轴永远不会改变,所以顶部的条被截断。
我尝试设置显式值而不是 newYmax,但我看到了相同的行为,所以问题不在于我对 newYmax 的计算。我只是无法更改 myBarChart.options.scaleSteps,而且我不知道为什么。
我使用的是 v1.0.1(不能升级)。 This answer 表示创建后无法更改选项并且必须重新绘制图表,但我找不到任何文档支持。
我可以在图表创建后访问和更改 chart.js 选项吗?
【问题讨论】:
标签: javascript chart.js