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

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 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵