qq_15197419 2019-07-05 11:33 采纳率: 83.3%
浏览 2919
已采纳

winform chart实时绘图时出现空白和红叉

图片说明这是正常显示。图片说明
曲线图会出现如图2情况。图片说明如图3,图表变成红叉。

串口通过蓝牙获取的数据(放沙袋里的芯片)
1.测试时绘图频率比较高,每秒10次左右。
2.只有曲线图会出现变空白的情况,频率大概几百次绘图会出现一次,可以确定和数据源无关,数据写死依然会出现这种空白现象。低频击打也会出现。

List txData = new List() { 1, 2, 3, 4, 5, 6, 7, 8 ,9,10,11,12,13,14,15,16};
tyData = new List() { 0, 10, 40, 66, 88, 99, 120, 110, 100, 90, 80, 70, 60, 40, 10, 0};
chart1.Series[0].Points.DataBindXY(txData,tyData );
(用固定数据也会出现空白)
3.图表偶尔会变成如图三的红叉,程序也不抛异常(也可以确定和数据源没关系,使用固定数据也会出现)。概率比较小,平均几千次绘图会出现红叉情况(不一定同时两个红叉,曲线图出现概率会大很多)无法确定是不是绘图频率太高导致的,因为出现概率很低,慢速几乎很难出现。出现红叉后会一直显示红叉状态,程序能正常继续运行

想请问下各位大牛什么原因,因为触发概率实在是太低了,又不抛异常
曲线图出现空白的原因可能是什么?
出现红叉的原因可能是什么?或者说出现红叉后有什么办法继续正常显示数据。

  • 写回答

2条回答 默认 最新

  • Carrot_H 2019-08-02 13:42
    关注

    这个是 OnPaint 事件 内部引起的。重写父类事件加一个 try catch 即可屏蔽掉。但是会闪帧。因为数据太快 picbox 的问题。同时检查下 bitmap 对象。不行的化你换 wpf 看看。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 爬知乎登录之后内容加载不出来
  • ¥15 怎么用protues测量通频带
  • ¥15 zepelin使用sparkInterpreter 异常
  • ¥15 paho mqtt 接收不到消息
  • ¥15 函数r关于两个分量y,z方向上的图像,分开画r随y的图像,r随z的图像
  • ¥15 如何用Matlab求Pearcey函数的数值积分?
  • ¥15 一个简单的函数定义问题,输出结果是相反的,怎么回事呢?
  • ¥15 页面加载报错,不知道怎么处理
  • ¥20 vue-draggable-resizable选中状态保持
  • ¥15 flink cdc读取SqlServer2016