zhangrongqi 发表于 2024-11-6 17:17

c#编写一个可视化图表

背景是我需要读一个文件里面每秒都有一个数
然后我要把一天的所有秒的数放在页面上 然后连成线
我用的Chart chart;框架
然后把所有的点chart.Series[$"Card{i + 1}"].Points.AddXY(time, values);都add上去
现在问题是会很卡 有什么办法能 优化一下呢

qq465881818 发表于 2024-11-6 18:22

异步或者多线程

钱多多28 发表于 2024-11-6 22:05

异步操作不就行了。卡。。那就是UI线程堵塞了

e007a 发表于 2024-11-7 08:30

数据保存到数据库表中,然后绑定数据chart显示

ntluking 发表于 2024-11-7 10:22

加个缓冲控制试试呢?应该就是减少图标闪烁的问题吧,SetStyle(...)

firstrose 发表于 2024-11-15 11:22

问题在于你的点太多了。8万个点,按照96dpi计算,需要22米,除了户外大屏,谁的屏幕有22米宽?
你要考虑一下,有必要一次性全部展示么?
是不是应该部分采样显示,然后在zoom in的时候逐步添加点,直到可以把区间内所有的点显示出来。

zhangrongqi 发表于 2024-11-15 13:51

现在一次看8w个点 就全糊在一起了,只看几小时的还能看出来线条的连线
用异步和多线程 现在勉强能用了
页: [1]
查看完整版本: c#编写一个可视化图表