作为学习的一部分,我正在开始一个编程项目。我的项目将是一个数据可视化程序,必须能够至少可视化或“绘制”一个折线图和可能的其他图表,如条形图或饼图。但是,我不允许使用使这变得容易的Python库(如Matplotlib、QtDesigner、NumPy或PyQtChart)。应使用PyQt进行可视化
这个项目对我来说真的很难,因为我对编程相当陌生。我想知道是否有人有类似编程项目的经验或技巧来帮助我完成这个项目。提前谢谢
另外,如果这不是StackOverflow的相关问题,请告诉我,我会记下来
Tags:
考虑到这些限制,剩下的唯一解决方案是通过QPainter使用自定义小部件绘制,或者使用Graphics View Framework,这更强大,但也更复杂
在下面的两个简单示例中,您可以看到两种方法之间的一些差异,这将显示相同的数据
QWidget子类化通常要简单得多,因为您可以直接绘制基本形状(包括椭圆、圆弧和饼)。您只需实现
paintEvent
(请记住,小部件上的QPainter只能发生在绘制事件中!您自己不能调用paintEvent())在小部件上构造QPainter,然后开始绘制这种简单性的缺点是,如果您需要更高的模块性和更好的控制,那么修改起来可能会更麻烦。
图形视图(这正是QtCharts使用的)允许更高的扩展性,因为它提供了一个面向对象的框架(使用QGraphicsItem子类),因此允许操作现有数据,因此您可以更轻松地添加/删除条形图/饼图/等;不幸的是,它既强大又难以相处,需要一些长期的研究和实验才能真正掌握它
一些考虑:
addRect()
李>相关问题 更多 >
编程相关推荐