我有以下问题:当我创建多个视图,每个视图都有一个轴时,我无法使用鼠标右键从左侧的所有可用轴中选择 - > y轴 - >链接轴。由PlotWidget自动创建的ViewBox中可用的轴不可用于选择:在“链接轴:”下拉框中只能看到“轴1”和“轴2”。
DropDownbox with missing axis:
我做错了什么?
请参阅下面的代码我正在使用:
from pyqtgraph.widgets.PlotWidget import PlotWidget
import pyqtgraph as pg
import PyQt4
class Graph(PlotWidget):
def __init__(self, parent=None):
PlotWidget.__init__(self, parent)
self._viewBoxes = [self.plotItem.getViewBox()]
self._viewBoxes[0].register("axis 0")
for i in xrange(2):
vb = pg.ViewBox(name="axis %s" %(i+1))
self.plotItem.scene().addItem(vb)
vb.setXLink(self.plotItem)
self._viewBoxes.append(vb)
self._axes = [pg.AxisItem('left') for _ in xrange(3)]
for c in zip(self._viewBoxes, self._axes):
vb, ax = c
ax.linkToView(vb)
self._curves = [self.plotItem.plot()]
for vb in self._viewBoxes[1:]:
plotDataItem = pg.PlotDataItem()
vb.addItem(plotDataItem)
self._curves.append(plotDataItem)
for p in self._viewBoxes[1:]:
p.setGeometry(self.plotItem.vb.sceneBoundingRect())
p.linkedViewChanged(self.plotItem.vb, p.XAxis)
self._curves[0].setData(x=[1,2,3,4],y=[0,4,0,4], pen="b")
self._curves[1].setData(x=[1,2,3,4],y=[0,1,2,1], pen="y")
self._curves[2].setData(x=[1,2,3,4],y=[0,-8,8,7], pen="r")
app = PyQt4.QtGui.QApplication([])
graph1 = Graph()
graph1.show()
app.exec_()