[案例分享] 使用各种 WPF Chart图表控件、插件的经历回顾与总结-简数科技

使用各种WPF Chart图表控件、插件的经历回顾与总结
--不愿透露姓名的客户提供
 
客户为表达对我司LightningChart 图表控件的喜爱及对我司提供协助表示感谢,特将研究使用产品时的一些经历与我们分享,如下将以第一人称转述。
 
 
大家好:
 
因为项目需求,需要基于Chart控件制作一个示波器,用于显示信号的实时波形图。
 
网上基于WPF开发的Chart控件还是有蛮多的,于是我上网查找了几款不错的Chart控件:ComponentOne、Live Charts、DevExpress以及LightningChart。,对它们进行简单地了解和学习,由于时间有限,所以掌握得不是那么全面,但是对于公司控件的选型基本可以用作参考和判断。
 
控件的选择主要基于以下几点:
a. 效率;
b. 学习成本;
c. 功能丰富性;
 
 
效率对于实时显示数据是至关重要的。示波器用于实时显示数据,如果数据量不是特别大的话,相信很多Chart控件基本都能够满足这个需求。当然针对不同的项目可能情况不同,所以需要展示的数据量也会存在差别。但是事实上,这样的实时数据的数据量往往是很大的,并且有可能需要显示多条通道 Channel的信号波形图。Chart处理和渲染波形图的效率较低,是很难做到实时显示的。为什么?因为Chart控件无法渲染大量数据,这时为了使程序保持相对流畅地运行,只能通过一些手段和方法来限制数据量,如果数据量太大,即使在显示的范围内做了采样算法,丢弃了一部分数据,还是会在程序里堆积很多数据等待渲染。由于数据的大量堆积,波形的显示在时间上会较滞后,也就是无法做到实时显示。对于数据点的渲染,一般有两种方式,通过CPU渲染和通过 GPU渲染,显然CPU的并行运算和GPU相比是相形见绌的,所以GPU渲染要比CPU渲染效率高很多。
 
学习使用一个控件,最理想的是该控件具有足够的资料、文档和使用实例。这样学习效率才会得到成倍的提高,学习成本才会减低。如果投入了大量时间,还是不知道怎么使用那个控件,那么即使那个控件做得再好,也只是一堆无用的代码而已。简单来说,相比几个控件,哪个能够满足我需求的同时,还具有完备的文档和资料,我就会选择哪个。
 
需求是多样性的,同时也是在不断变化的。因此符合这种需求变化的多样性,要么把控件设计得比较灵活,可以任意调整和修改,但是这种情况一般比较少见,一般属于开源,并且要求比较高。还有一种是,控件把别人能够想到的,甚至没有想到的功能基本都实现了,我想很多控件都是这样的,这就要求控件的功能足够丰富。
 
 
使用的几款控件比对分析

简数科技为LightningChart图表控件提供免费中文技术支持服务,更多详情,请到LightningChart中文论坛查看:http://forum.jianshukeji.com
简数科技同是为Highcharts图表控件提供中文技术支持服务;

 

猜你喜欢

转载自www.cnblogs.com/highcharts/p/WPF.html