gpt4 book ai didi

javascript - Chart.js 更改点的垂直位置

转载 作者:行者123 更新时间:2023-12-03 06:51:31 26 4
gpt4 key购买 nike

我延长Chart.types.Line并将比例覆盖为某个恒定值。

我现在需要什么 - 用

显示点
  • y > scale.maxscale.max位置
  • y < scale.minscale.min位置

用户与他们交互的能力。
标题应该是正确的(未修改的)值,所以我不能只修改数据集。

我怎样才能实现这一目标?

简化代码:

function ChartFactory(title) {
Chart.types.Line.extend({
name: title,
buildScale: function() {
this.options.scaleOverride = true;
this.options.scaleSteps = 10;
this.options.scaleStepWidth = this.options.S;
this.options.scaleStartValue = this.options.target - 5 * this.options.S;
Chart.types.Line.prototype.buildScale.apply(this, arguments);
},
draw: function () {
var chart = this;
Chart.types.Line.prototype.draw.apply(chart, arguments);
// some additional graphic here
}
});
}

最佳答案

只需在 buildScale 末尾添加以下内容

...
var scale = this.scale;
var originalCalculateY = scale.calculateY;
scale.calculateY = function(y) {
if (y > scale.max)
return originalCalculateY.apply(this, [scale.max]);
else if (y < scale.min)
return originalCalculateY.apply(this, [scale.min]);
else
return originalCalculateY.apply(this, [y]);
}
...

这会有点令人困惑,因为您仍然有轴标签。

<小时/>

fiddle - http://jsfiddle.net/wjb3k4gx/

关于javascript - Chart.js 更改点的垂直位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37478414/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com