logo Teechart应用技术详解——快速图表制作工具 我也要发布文档

第五章之使用极值控制实现实时监控


    Steema公司和慧都科技针对中国市场联合推出中文版TeeChart for .NET图表控件,一共汉化2000个词条(17000个单词),汉化文档35000个单词,包括控件设计时与运行时的界面汉化以及控件使用向导文档的汉化,总汉化90%以上!

    TeeChart for .NET中文版让您在使用和学习上没有任何语言障碍,至少可以节省30%的开发时间。TeeChart for .NET中文版具有易上手,使用方便,稳定性好,性价比高,价格优惠等优势,并且针对Web应用提供无限制服务器分发授权方式,非常有利于产品集成。

点击下载TeeChart for .NET最新试用版


    TChart的坐标轴提供了Automatic、Maximum和Minimu几个属性可以设定自动计算方式以及获得或设定某坐标轴的最大值和最小值。如果能够动态地改变在图表窗口中X轴显示的范围,则随着时间的推移和最大值最小值的改变,图表窗口显示的数据便呈现滚动状态。

代码设计

  • 首先,在程序运行的初始状态,对图表的X轴设定如下:

Chart1.BottomAxis.Automatic:=False;
Chart1.BottomAxis.Maximum:=100;//设定最大值
Chart1.BottomAxis.Minimum:=0;
  • 这段代码说明,图表的X轴最多可以显示100个点。那么,可以在产生数据的地方,实时修改X轴的最小值和最大值,始终保持图表窗口只能显示100个点,代码如下:

Inc(Number);
Series1.Add(random(100));
if Number >100 then
begin
Chart1.BottomAxis Maximum:=Number;
Chart1.BottomAxis Minimum:=Number-100;
end;
  • 这样,就保证窗口中的点数是固定的,那么,极值的变化也就产生了滚动的效果

应用举例

  • 建立一个新工程,并按下表设置组件属性,设计阶段的界面如下图所示。窗体中增加的SpinEdit1组件可以随时改变显示窗口内的数据点数,或者说数据点的稀疏状态。

使用极值控制实现实时监控举例组件属性设置

组件名属性设置说明
TChartNameChart1图表组件
TLineSeriesNameSeries1图表中的序列
TSpinEditNameSpinEdit1用于设定显示窗口的范围
Value100初始设定值
TTimerNameTimer1定时器
Interval1000
CheckedFalse

使用极值控制实现监控设计阶段界面

  • 事件代码。在窗体OnCreate事件中对X轴进行初始设定,加入下列代码:

procedure TForm1. FormCreate(Sender:TObject);
begin
Chart1.BottomAxis.Automatic:=False;
Chart1.BottomAxis.Maximum:=SpinEdit1.Value;//X轴设定值可随时改变
Chart1.BottomAxis.Minimum:=0;
Chart1.LeftAxis.Automatic:=False;//Y轴最大值范围设定
Chart1.LeftAxis.Maximum:=100.0;

    然后,在模拟实时状态的定时器的On Timer事件中加入下列代码:

procedure TForm1.Timer1Timer(Sender:TObject);
begin
     Inc(Number);
     Series1.Add (random(100));
     if Number>SpinEdit1.Value then
     begin
        Chart1.BottomAxis.Maximum:=Number;
        Chart1.BottomAxis.Minimum:=Number- SpinEdit1.Value;
     end;
end;
  • 运行示例。该工程运行后的界面如下图所示:

使用极值控制实现监控运行阶段界面

相关资料推荐:

上一章:TeeChart实时监控原理和轴管理工具

下一章:TeeChart的地图显示原理和代码设计思路

Teechart 2019资源合集

=====================================

    现TeeChart for .NETTeeChart for JavaScript/HTML5TeeChart for Xamarin.Android等均已加入在线订购,现在抢购可立享优惠!

    关注慧聚IT微信公众号???,了解产品的最新动态及最新资讯。

慧聚IT