gpt4 book ai didi

javascript - Chart.js - 绘制水平线

转载 作者:行者123 更新时间:2023-12-03 03:47:22 25 4
gpt4 key购买 nike

我想使用 Chart.js 在图表中绘制一条水平线。但我做不到。

我读过这个问题 - Chart.js — drawing an arbitrary vertical line - 但我无法转换用于绘制水平线而不是垂直线的代码。

我希望你能帮助我(尤其是土 bean 皮:))。

最佳答案

这是绘制水平线的 JavaScript 代码。

var data = {
labels: ["JAN", "FEB", "MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC"],
datasets: [{
data: [12, 3, 2, 1, 8, 8, 2, 2, 3, 5, 7, 1]
}]
};

var ctx = document.getElementById("LineWithLine").getContext("2d");

Chart.types.Line.extend({
name: "LineWithLine",
initialize: function () {
Chart.types.Line.prototype.initialize.apply(this, arguments);
},
draw: function () {
Chart.types.Line.prototype.draw.apply(this, arguments);

var point = this.datasets[0].points[this.options.lineAtIndex]
var scale = this.scale
console.log(this);

// draw line
this.chart.ctx.beginPath();
this.chart.ctx.moveTo(scale.startPoint+12, point.y);
this.chart.ctx.strokeStyle = '#ff0000';
this.chart.ctx.lineTo(this.chart.width, point.y);
this.chart.ctx.stroke();

// write TODAY
this.chart.ctx.textAlign = 'center';
this.chart.ctx.fillText("TODAY", scale.startPoint + 35, point.y+10);
}
});

new Chart(ctx).LineWithLine(data, {
datasetFill : false,
lineAtIndex: 2
});

http://jsfiddle.net/7a4hhzge/455/

这是基于 the code used to draw an arbitrary vertical line ,它可能并不完美,但您应该能够调整它以满足您的需求。

关于javascript - Chart.js - 绘制水平线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31092489/

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