"DevExpress图表控件XtraCharts在监控软件中的应用"
一、概述
DevExpress 是一流的控件套包产品,功能强大,是.NET 基础控件扩展包,可以快速开发出专业、强大的应用程序。其中的 XtraCharts 组件可以方便、快捷的开发出有关二维和三维图表软件。该组件可使用在窗口应用、ASP.NET 和打印页面上。XtraCharts 可以可视化各种数据,包括数据库表和集合数据。XtraCharts 的二维图表包括柱状图、点图、线图、饼图等,同时还支持三维图。
二、XtraCharts 应用方法和实例分析
ChartControl 控件是将 XtraCharts 用在 WinForm 上。本文主要论述 ChartControl 控件应用。XtraCharts 在 ASP.NET 和打印页面上应用方法和此类似。DevExrpress 为用户提供两种方式使用该控件:一是可以将 ChartControl 直接拖放在窗口上,通过 Chart Wizard 来定制具体的应用;二是在程序运行时,直接通过代码来生成定制具体的应用。第一种方式简单方便,适合简单应用。第二种方法比较复杂,但灵活,适合复杂应用。本文主要介绍第二种方式。
ChartControl 将要显示的数据和对应图形分离。该控件将每一组相关的数据封装在一个 series 对象中。其中一个 series 对象代表了一系列相关的数据点,作为在图表上显示的一个分组。同一个 series 对象可以不同的视觉方式表示。比如同一组数据可以分别使用柱状图、点图、线图、饼图等表示。Chart-Control 中的 Diagram 对象用来表示图表的显示布景,包括Axis 坐标轴,Gridline 网格线,图例 Legend 等。
三、实现方法和步骤
3.1 设置 Diagram 对象
自定义一个类来实现。用来设定图表显示元素,包括坐标轴和图例等。坐标轴分为主坐标轴和副坐标轴。需要将不同类型数据显示在同一张图表上,而每一项数据的数值有不同范围。因此就需要多个坐标轴表示这每一项数据,每一种数据封装在一个 series 对象中。因此每一个坐标轴和一个 series 对象绑定。
在本文应用中,将采集数据的时间作为 X 轴,在 Y 轴方向分别为每一个时间点上对应的体温、呼吸和脉搏值。因此需要设定一个 X 轴和三个 Y 轴。其中一个为主 Y 轴呼吸数据绑定,两个副 Y 轴分别同体温数据和脉搏数据绑定。
使用下面的代码来实现一个表示体温的副 Y 轴。
private XYDiagram xyDiagram1 ;
xyDiagram1.SecondaryAxesY.AddRange(new SecondaryAxisY[]{secondaryAxisY1,secondaryAxisY2});
SecondaryAxisY secondaryAxisY1 = new SecondaryAxisY();// 定义一个副 Y 轴。
secondaryAxisY1.Alignment = AxisAlignment.Near;// 设定显示位置。
secondaryAxisY1.GridSpacingAuto = false; // 网格线间隔手动设置。
secondaryAxisY1.GridSpacing = 2; // 设置网格线的间隔 。
四、结论
XtraCharts 组件可以快速开发出专业的二维图表或三维图表软件。该组件可使用在窗口应用、ASP.NET 和打印页面上。XtraCharts 可以可视化各种数据,包括数据库表和集合数据。通过使用 XtraCharts,可以极大提高开发效率和效果。开发人员不必耗费太多时间在图表显示上,而将重点放在数据的处理上。