每隔5秒获取一下设备的电压,然后用DevExpress的ChartControl(line)画出电压的折线图,要求时实更新(也就是每5秒画一下)我从没用过DevExpress,哪位给点资料,或提供下思路

解决方案 »

  1.   

    在用dev 没碰到过如此复杂的
      

  2.   

    这方面的图形用这个好用
    Arction LightningChart Pro网站
    my blog
    http://ufo-crackerx.blog.163.com/
      

  3.   

    又是这个所有CSDN结帖率最高的兄弟我用过那个控件,有啥具体的问题呢?
      

  4.   

    安装一个DEV,有帮助,有源码,有DEMO.
      

  5.   

    dev交流: http://smartsoft.5d6d.com/forum-46-1.html安装完dev有很多demo楼主自己看看
    画折线图好像只要添加点就可以了
      

  6.   

    试试chartfx,更新数据源,update下chart就解决了,可惜没动画,不知道以后的版本有米有
      

  7.   

    这问题好像问的有点多余.....装了Dev就看到Demo了....
      

  8.   

    恩,DEMO就够了,如果还有不懂得再问吧。。
      

  9.   


            /// <summary>
            /// 目标值系列曲线
             /// </summary>
            private Series DestSeries { get { return chartMain.Series.Count > 0 ? chartMain.Series[0] : null; } }        /// <summary>
            /// X轴值范围
            /// </summary>
            private AxisRange XRange
            {
                get
                {
                    SwiftPlotDiagram diagram = chartMain.Diagram as SwiftPlotDiagram;
                    if (diagram != null)
                        return diagram.AxisX.Range;
                    return null;
                }
            }       private void SetChartData(CollectPointData pointData)
            {
                if (this.InvokeRequired)
                {
                    this.Invoke(new Action<CollectPointData>(SetChartData), pointData);
                }
                else
                {
                    decimal colValue = pointData.Value;                RealSeries.Points.Add(new SeriesPoint(pointData.Time, colValue));
                    float minTime = pointData.Time - 30f;
                    for (int i = 0; i < DestSeries.Points.Count; i++)
                    {
                        if (DestSeries.Points[i].NumericalArgument > minTime)
                        {
                           DestSeries.Points.RemoveRange(0, i);
                           break;
                        }
                    }                XRange.SetMinMaxValues(minTime, pointData.Time);
                }
            }       public class CollectPointData
           {
            public CollectPointData() { }        public CollectPointData(float time, decimal value)
                : this()
            {
                this.Time = time;
                this.Value = value;
            }        public float Time { get; set; }
            public decimal Value { get; set; }
        }  具体图表,还需要使用DEV向导配置下,我最近用到这个图表做了个实时的钢板厚度监测。
      

  10.   

    谢谢,把Demo都贴出来了,呵呵