Как отобразить изображение pyqtgraph в форме, созданной с помощью qtdesigner? - PullRequest
1 голос
/ 20 июня 2019

Я создал форму, поместил на нее GraphicsView, повысил виджет до pg.GraphicsWindow.

Теперь я могу построить график с помощью q.addPlot(), но как мне отобразить изображение?

Способ, предложенный в примерах

    z = pg.ImageItem(np.zeros((200,200)))
    im = self.q.addItem(z)

, не работает сследующее сообщение об ошибке:

  addItem(self, QGraphicsLayoutItem, int, int, alignment: Union[Qt.Alignment,  
  Qt.AlignmentFlag] = Qt.Alignment()): argument 1 has unexpected type 'ImageItem'

1 Ответ

1 голос
/ 20 июня 2019

Выглядит так, как будто по какой-то причине его следует обернуть в ViewBox:

    img_data = np.flipud(np.array(Image.open(r'd:\image.png')))
    img = pg.ImageItem(img_data.transpose([1, 0, 2]))
    # or img = pg.ImageItem(np.zeros((200,200)))
    vb = self.q.addViewBox()
    vb.addItem(img)
...