jacky_zh 发表于 2016-8-2 14:18:57

C1Chart 中LineAreaOptions有什么作用?




我在Componentone英文网站中,有篇 Handling Large Data Sets with C1DataGrid and C1Chart的文章,
看到有对大数据量的图表有些优化处理。
比如:LineAreaOptions.SetOptimizationRadius(c1Chart1, 5);


效果如上图,但是不明白这个中间对数据有什么不良的影响,望给予解释。
文章链接:http://our.componentone.com/2010/06/17/handling-large-data-sets-with-c1datagrid-and-c1chart/

Alice 发表于 2016-8-2 15:33:17

这个是用来做自动优化的。设置优化半径。
简单的说,就是设置它会减少绘制在线的点的数量,这样优化性能。

比如原本有50个点绘制在图上,然后设置半径是5,那么就以数据点为中心,半径为5来计算,在这个数据点半径为5的面积里,不绘制其他数据点,比如原本它的范围内还有2个点,这两个点自动忽略。
这样原本50个点,最后根据半径的原则,会绘制30点。

jacky_zh 发表于 2016-8-4 17:15:07

能给个这个LineAreaOptions使用的demo的例子吗?

Alice 发表于 2016-8-4 17:35:31

jacky_zh 发表于 2016-8-4 17:15
能给个这个LineAreaOptions使用的demo的例子吗?

随机安装示例类型是Line的Demo,或是你自己的Demo,添加一句代码就可以了。
LineAreaOptions.SetOptimizationRadius(c1Chart1, 1.0);

jacky_zh 发表于 2016-8-4 20:50:47

Alice 发表于 2016-8-4 17:35
随机安装示例类型是Line的Demo,或是你自己的Demo,添加一句代码就可以了。

这行代码我加的时候,感觉绘图没有什么变化呀。是不是位置加的时候有关系,这行代码应该加在那个位置,能够体现优化

Alice 发表于 2016-8-5 09:17:22

jacky_zh 发表于 2016-8-4 20:50
这行代码我加的时候,感觉绘图没有什么变化呀。是不是位置加的时候有关系,这行代码应该加在那个位置,能 ...

我测试下,给你反馈。

jacky_zh 发表于 2016-8-5 09:42:28

Alice 发表于 2016-8-5 09:17
我测试下,给你反馈。

我感觉这个优化半径没有什么优化的,性能也没有什么明显体现的

jacky_zh 发表于 2016-8-5 09:43:46

Alice 发表于 2016-8-5 10:59:50

jacky_zh 发表于 2016-8-5 09:42
我感觉这个优化半径没有什么优化的,性能也没有什么明显体现的

Demo收到了。测试完给你回复。

WPF下绘制过多会对性能有很大的影响,这是平台的限制,不可避免。
这个方法的半径优化推荐值是1.0-2.0,再多就会多曲线准确性本身造成影响。

jacky_zh 发表于 2016-8-5 11:46:19

Alice 发表于 2016-8-5 10:59
Demo收到了。测试完给你回复。

WPF下绘制过多会对性能有很大的影响,这是平台的限制,不可避免。


这个多的话,图也没有失真,只是感觉貌似没有优化半径
页: [1] 2
查看完整版本: C1Chart 中LineAreaOptions有什么作用?