我需要在javascript中以程序方式平滑我的“图表构建器”。这样做的Excel变体非常好,但我没有建议使用什么算法。我尝试通过编写宏来获得VBA代码,但我得到的只是(预期)ActiveChart.SeriesCollection(1).Smooth = True
有人知道Microsoft Excel使用什么算法来平滑图表或查看代码的方式吗?
UPD:对于那些发现此问题并遇到同样问题的人,我可以使用javascript源代码推荐此SVG solution
答案 0 :(得分:5)
Splines 用于执行此操作:
http://en.wikipedia.org/wiki/Spline_interpolation
我不确定Excel是否使用了这个,但三次样条通常用于这种“加点”问题。基本上,您通过这些点拟合一组三次多项式(即一组三次方程)。每个立方体用于由两个或三个点限定的一个或两个区域。通过在一个立方体完成并且下一个立方体开始的每个点处不仅保留值而是保留梯度来定义立方体。通常将二阶导数设置为零,这为您提供了另一个边界条件和更好的平滑度。