C# 曲线控件 曲线绘制 实时曲线 多曲线控件 开发

Prepare


 本文将使用一个NuGet公开的组件来实现曲线的显示,包含了多种显示的模式和配置来满足各种不同的应用场景,方便大家进行快速的开发系统。

 

在Visual Studio 中的NuGet管理器中可以下载安装,也可以直接在NuGet控制台输入下面的指令安装:

Install-Package HslCommunication

NuGet安装教程  http://www.cnblogs.com/dathlin/p/7705014.html

 

更强大的历史曲线控件参考:https://www.cnblogs.com/dathlin/p/10291327.html

 

Summary


曲线控件属于组件里诸多控件中的一种,为什么单独拿出来写一篇博客呢,就是因为曲线控件相对于其他控件都要复杂很多,并不是几个属性那么简单,下面列举了本曲线控件的特性:

  • 提供便捷的API调用即可显示曲线信息内容,不需要复杂的配置
  • 曲线界面的一些信息可以自由定制,比如坐标轴的颜色,是否显示虚线等等
  • 高度的大小自适应,无论你怎么调整控件的大小,始终都能友好显示
  • 支持数据拉伸填充和像素点填充两种模式,具体区别参照下面的代码
  • 多曲线支持,支持同时显示多个曲线信息,每个曲线可独立的指定颜色,线宽等等。
  • 支持左右两个参考系,就是说一个控件中允许显示2种数据跨度不一致的曲线,每种曲线可以显示多条不同的曲线

 其他控件的说明地址:http://www.cnblogs.com/dathlin/p/8150516.html

 组件的完整API说明:http://www.cnblogs.com/dathlin/p/7703805.html

 

要想使用组件的控件,除了使用NuGet来安装组件外,还需要将组件的dll文件(在你的项目的packages里面可以找到,如果你本来就是引用本地的,就直接拖拽本地的即可)拖拽到工具栏:

C# 曲线控件 曲线绘制 实时曲线 多曲线控件 开发_第1张图片

拖拽完成后效果如下:

C# 曲线控件 曲线绘制 实时曲线 多曲线控件 开发_第2张图片

 

 

先定义一个方法,获取指定范围的,指定个数的随机数数组,供下方的代码调用

        private float[] GetRandomValueByCount( int count, float min, float max )
        {
            float[] data = new float[count];
            for (int i = 0; i < data.Length; i++)
            {
                data[i] = (float)random.NextDouble( ) * (max - min) + min;
            }
            return data;
        }

 

 

 

1.单曲线使用


把控件拖拽到窗口界面上去后,现在界面如下,你可以随意的拉伸大小,调整到一个虚线看着比较清晰的时刻停止:

C# 曲线控件 曲线绘制 实时曲线 多曲线控件 开发_第3张图片

我们看到左右纵轴的数据跨度都是0-100,现在我们有个需求,手里有300个0-200的数据需要显示,那么就要先设置左右纵轴的数据跨度

C# 曲线控件 曲线绘制 实时曲线 多曲线控件 开发_第4张图片

接下来就可以编写显示的代码了,一下数据随机:

        private void userButton1_Click( object sender, EventArgs e )
        {
            userCurve1.SetLeftCurve( "A", GetRandomValueByCount( 300, 0, 200 ), Color.DodgerBlue );
        }

 

显示结果如下:

你可能感兴趣的:(c#)