最近,我开始在网站上的图表上使用Dygraph,一切正常。但是,纯粹是出于审美上的改变,我想使基于我的数据绘制的线条平滑,并且不具有尖锐的边缘。
我检查了dygraph是否可以选择样条图,但找不到任何东西。我还通过Dygraph网站上的“选项引用”进行了搜索,但仍然无济于事。
我发现唯一用dygraph绘制的平滑边缘的东西是“示例”页面中的一些示例,例如这样的示例:http://dygraphs.com/gallery/#g/plotter(蓝线和紫线)
我查看了其中的代码,但无法弄清楚它的外观。我得到的唯一提示是使用了Math.sin,Math.cos,Math.round等。但是,如果我要使用这些信息,那将改变我提供给图表的数据中的值,而我却不希望那样。我想保持值(value)观不变。
如果有人对我如何才能获得平滑的边缘并仍然保持我的值(value)观不变的想法有所了解,请分享。感谢您的阅读!
最佳答案
不幸的是,在曲线图中不可能有样条图(这也称为here)。
如果您确实想要平滑的边缘而不更改值,则建议您使用三次样条插值之类的方法。可以找到here不错的文章,可以帮助您入门。
因此,您要做的就是为大量X值生成这些插值点。
然后,使用图表来绘制这些值。 Dygraphs仍然使用尖锐的边缘来显示值,但是由于您是为大量输入值生成这些值的,因此显示的行看起来很平滑。
注意:使用三次样条插值时,将在不更改精确值的情况下绘制数据点。