我希望在ImageView中显示一个数组的RGBA。我目前唯一能做到的方法就是先创建一个QImage,然后再创建一个QPixmap并将其显示在标签中。但是,我希望将其显示在ImageView中,以提供我已经实现的所有其他功能。这个是可能的吗?
qimage = pg.fn.makeQImage(x)
pixmap = QtGui.QPixmap.fromImage(qimage)
imvOCTTopLeft.close()
elasticity = QtGui.QLabel()
layout.addWidget(elasticity,4,1)
elasticity.setPixmap(pixmap)发布于 2019-01-30 01:38:19
使用ImageView.setImage(img)参数必须是具有形状(宽度,高度,4)的3Dnumpy数组。最后一个维度是0到1范围内的rgba。
import pyqtgraph as pg
import numpy as np
if __name__ == '__main__':
app = pg.mkQApp()
w = pg.ImageView()
image = np.array([np.array([np.array([1, i*0.01, i*j*0.0001, 1]) for i in range(100)]) for j in range(100)])
w.setImage(image)
w.show()
app.exec()结果:

发布于 2020-06-13 01:26:11
这个库可以帮助你在QImage和ndarray https://github.com/hmeine/qimage2ndarray/之间进行转换。
https://stackoverflow.com/questions/54412595
复制相似问题