【发布时间】:2017-12-19 20:44:38
【问题描述】:
我在 Chart.JS 中有两个独立的数据集,一个代表历史数据的选择,另一个代表基于该数据的预测。这是图表当前的样子。历史数据为黑色,预测为蓝色:
我想将这两个数据集保留为单独的数据集,但将它们连接起来,以便图表显示为一条线。在以前的版本中,我通过向预测数据集中添加一个数据点来实现这一点,该数据点与历史集中的最终数据点完全相同,但这会产生我想避免的不准确冗余。
除非有一些我一直找不到的 chart.js 设置,否则我担心我可能必须注册一个插件来执行此操作,这似乎会变得不必要地笨拙。谢谢。
【问题讨论】:
-
Chart.js 中的数据集只是一个值数组。如果您将数据集放在单独的数组中并将它们组合起来仅用于填充图表,它应该可以按您的意愿工作。我想这也取决于您使用的数据结构。
-
这是个好主意,但问题是在这种情况下,我不确定如何更改第二个数据集行的颜色以非常清楚哪个值是历史值和预测值。
-
我建议你看一下网站上的多轴示例。它可能会有所帮助。 chartjs.org/samples/latest/charts/line/multi-axis.html我相信这与图表中每个数据集的背景颜色属性有关。
-
是的,我了解如何为每个数据集分配不同的颜色,问题是如果我组合数据集以获得一条连续线,那么我将不得不选择一种定义整个数据集的颜色.我目前正在探索是否可以找到最后一个历史点的索引,并以某种方式更改其后线上每个点的线颜色。
-
我不认为 Chart.js 内置支持不同的点颜色。它们具有更改用于每个点的符号的点样式。您可以更改不同数据集的符号大小。插值示例可能是您的折衷方案。
标签: javascript chart.js