我想了解库的一些部分“PyQtGraph”,尤其是在2D绘图方面。在
在源代码中,两个python文件如下:PlotDataItem.py
和{pyqtgraph/graphicsItems/
)。但在这两个文件中,我看不到任何要绘制的函数。我的意思是我们只有保存x和y数据的方法(self.yData
和{draw()
。)
编辑: 谢谢你的回答。我正在阅读源代码,是的,我发现ViewBox.addItem. 事实上,我试图删除代码的某些部分,以查看曲线是否被分解。台词:场景.addItem(项目)和项目.setParentItem(self.childGroup)似乎很重要。不管怎样,你的意思是我必须专注于qgraphicscene和QGraphicsView?你能确认一下PlotDataItem只是一个文件,其中x和y数据被“保存”而没有“plot”?在
简单的回答是PyQtGraph将绘图委托给Qt's Graphics View Framework。PyQtGraph将创建一个
QGraphicsScene
,并将QGraphicsItems
添加到该场景中。如果将QGraphicsView
对象连接到该场景,Qt将使用该视图的变换(缩放、旋转等)来渲染场景。在因此}是{}的后代。通过调用它们的}调用。在
PlotCurveItem
和{scene()
方法,可以找出它们属于哪个场景。我花了一点功夫才找到PyQtGraph将项目添加到场景的位置。这是在ViewBox.addItem
中完成的,它由PlotItem.addItem
调用,后者又由{如果想理解PyQtGraph,必须阅读Organization of Plotting Classes部分。尽管如此,PyQtGraph类层次结构有时会因为多重继承和命名不一致(术语item和widget被重载,一致的命名约定可能会导致长而笨拙的名称)。我在过去做了一个UML图来获得更好的概述(见下文)。蓝色的类由PyQtGraph定义,黑色的类是Qt类。它不是完整的,不是所有的PyQtGraph类都包括在内。在
相关问题 更多 >
编程相关推荐