c#chart控件如何拟合一条平滑的曲线(点已经采集)

用c#语言,利用chart控件绘制曲线,数据来源于一张表,将轮廓扫描测距传感器返回的值记录在一张表中,(X轴为传感器的位置,Y轴为反射值,也就是传感器的返回值),用chart直接生成曲线时大致的轮廓轨迹能看到,但是由于传感器可能有干扰或物体表面原因,曲线锯齿,波动(或者说曲线跳点)很多,看上去很难受,如何用代码实现曲线拟合(或者使其平滑)比如说有一些高的跳点,去掉还是有其他的一些方法,可一定范围更改数据, 使其看上去逼近真实物体的轮廓, 并且具有可观性。

1.使用gdi+画图
2.ComponentOne Studio Enterprise
3.Dundas Chart for ASP.NET - Enterprise (VS2005)
4.OWC可以,不过推荐微软的chart控件,以前是dundas的 下载:http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=130f7986-bf49-4fe5-9ca8-910ae6ea442c

这里有一个开源绘图控件
http://www.codeproject.com/KB/graphics/zedgraph.aspx

手把手教程
http://hi.baidu.com/%C8%FC%C4%C9%D0%D0%D0%C7/blog/item/dca89efb91d232136d22eb91.html

VS2008可以考虑
用.net3.5 sp1下边的mschart控件
http://topic.csdn.net/u/20090414/10/C8DD7E01-CB11-447E-B79E-CDFC2BF62B89.html

http://www.rczjp.cn/HTML/090226/20095626105606.html

你这个不应该是“拟合”,而应该是“插值”(平滑),因为拟合和平滑本身就是矛盾的。你不可能既要“拟合”又要平滑。

但是根据你的描述,你仅仅是“看上去难受”,你并不关心曲线是不是逼近真实的值。那么自然就是插值了。

插值具体的做法看这里:https://blog.csdn.net/song_qingwei/article/details/21594433