查看完整版本: [-- 请教:关于动态绘图 --]

QTCN开发网 -> Qt应用版 -> 请教:关于动态绘图 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

大家好 2017-05-06 14:36

请教:关于动态绘图

新手请教:
类似这样的需要动态显示的图,用什么做合适?
[attachment=16993][attachment=16994][attachment=16995]

下面是Python的可视化库vispy的两段演示程序,从效果上比较接近,但是看不懂啊。
第一段程序是多个不同多边形自动对接并自动充满显示画面的程序,第二个为多数据的时间序列显示程序。


[attachment=16996][attachment=16997]

程序代码来自http://vispy.org/

第一段程序:
https://github.com/vispy/vispy/blob/master/examples/demo/gloo/voronoi.py
第二段程序:
https://github.com/vispy/vispy/blob/master/examples/demo/gloo/realtime_signals.py

不知能否做这样的改变:
第一个程序显示的多边形可设置为长方形(包括方形);
长方形的数量可添加或减少(如:以文件选择或鼠标拖动的方式);
各长方形内可放置不同数量的图形2中的时间序列图形,
长方形的大小随其中放置的时间序列信号数量多少自动调整其大小(其中的信号图形大小可保持一致),并仍然保持各图形能自动填满画面;图形是可以实时变化和可交互的。

lemonzll 2017-05-06 19:56
vispy那两个都是用opengl绘图的,你如果熟悉opengl可以参考,看你opengl水平,如果比较好可以考虑用opengl,编程麻烦点。要是opengl水平一般,就选择使用qwidget自定义绘图,使用qpainter绘制,如果还有对色块进行鼠标操作等要求,用graphics view,你得试下性能能达到要求不,感觉应该优化下没太大问题。你如果熟悉qml也可以用qml,结合qpainter或者opengl。你根据自己需要选择,如果是做长期开发维护的专业产品的,可以研究下opengl,用qopenglwidget,毕竟性能好,要是要求开发周期短或不熟opengl,有鼠标交互要求就graphics view,没有就qwidget自定义绘图,要这两个性能不够,就研究下graphics view设置视口成qglwidget或做其他优化,或qwidget改成qopenglwidget/qglwidget,要还不行,就qml结合qpainter或者opengl

大家好 2017-05-08 16:16
lemonzll:vispy那两个都是用opengl绘图的,你如果熟悉opengl可以参考,看你opengl水平,如果比较好可以考虑用opengl,编程麻烦点。要是opengl水平一般,就选择使用qwidget自定义绘图,使用qpainter绘制,如果还有对色块进行鼠标操作等要求,用graphics view,你得试下性能能达到要求不,感 .. (2017-05-06 19:56) 

谢谢。都不熟悉啊,看来要从头学起了,有种只是为了煮碗牛肉面,却要从养牛种庄稼开始的感觉啊,另外还是一次性需求,挺纠结的。

rjsloth 2018-03-29 14:35
大家好:谢谢。都不熟悉啊,看来要从头学起了,有种只是为了煮碗牛肉面,却要从养牛种庄稼开始的感觉啊,另外还是一次性需求,挺纠结的。 (2017-05-08 16:16) 

用QGraphicsView框架吧,相对比较简单,如果有人指导,上手会很快。

stlcours 2018-03-29 18:37
我觉得自己画不难,难的是放大缩小,可视化各种操作,还要能正确保存读取。

stlcours 2018-03-29 18:38
根据你提问的水平看,估计你能勉强做到画出来+有限的可视化操作。所以要么找人做,要么找到类似的开源项目,否则没戏。。。


查看完整版本: [-- 请教:关于动态绘图 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled