Chartjs,基于不等时间间隔绘制数据
Chartjs, plot data based with unequal time intervals
我正在用 chartjs 绘制图表,其中 x 轴代表时间,y 轴代表相应的数据。
现在我得到了今天、上周、上个月和去年的数据。
var myLineChart = new Chart(ctx).Line(data, options);
var data = {
labels: ["last year", "last month", "last week", "today"],
datasets: [
{
label: "My First dataset",
data: [80, 81, 56, 40]
}
]
};
当我绘制图表时,每个点之间的距离是相同的。
但这是不正确的,因为时间间隔不一样。
'last year'和'last month'之间的距离应该大于'last week'和'last month'之间的距离。
任何人都知道我如何使用 chartjs 实现这一点,当我查看 documentation 时,我没有看到任何选项。
您必须使用 chart.js 的扩展,它在数据结构中包含 x 和 y 值的数据。我找到的一个是 Chart.Scatter.
更长的解释是,默认情况下,您在 chart.js 中使用的标签只是标签;它们不会被解析为任何类型的 x 值。
您可以使用 Chart.js 散点图类型 (https://www.chartjs.org/docs/latest/charts/scatter.html)。还要记得在 datasets
选项中设置 showLine: true
。
我发现这会导致 x 轴的起点和终点出现间隙。您可以按如下方式输入 x 轴的最小和最大刻度:
scales: {
xAxes: [
{
display: false,
ticks: { max: maxX, min: minX }
}
],
yAxes: [
{
display: false
}
]
}
我正在用 chartjs 绘制图表,其中 x 轴代表时间,y 轴代表相应的数据。
现在我得到了今天、上周、上个月和去年的数据。
var myLineChart = new Chart(ctx).Line(data, options);
var data = {
labels: ["last year", "last month", "last week", "today"],
datasets: [
{
label: "My First dataset",
data: [80, 81, 56, 40]
}
]
};
当我绘制图表时,每个点之间的距离是相同的。 但这是不正确的,因为时间间隔不一样。
'last year'和'last month'之间的距离应该大于'last week'和'last month'之间的距离。
任何人都知道我如何使用 chartjs 实现这一点,当我查看 documentation 时,我没有看到任何选项。
您必须使用 chart.js 的扩展,它在数据结构中包含 x 和 y 值的数据。我找到的一个是 Chart.Scatter.
更长的解释是,默认情况下,您在 chart.js 中使用的标签只是标签;它们不会被解析为任何类型的 x 值。
您可以使用 Chart.js 散点图类型 (https://www.chartjs.org/docs/latest/charts/scatter.html)。还要记得在 datasets
选项中设置 showLine: true
。
我发现这会导致 x 轴的起点和终点出现间隙。您可以按如下方式输入 x 轴的最小和最大刻度:
scales: {
xAxes: [
{
display: false,
ticks: { max: maxX, min: minX }
}
],
yAxes: [
{
display: false
}
]
}