数年ぶりに Windows 上の Python - PyQtGraph を使って 3Dグリッドを表示しようとしたらちょっと手間取ってしまったので備忘録です。
実行環境は「Python 3.12.2 64bit」です。
やりたかったのはたったこれだけの事です ↓ ↓ ↓
パッケージを導入する
雑に、pip installする。全部新しいので大丈夫。
- pyqtgraph - 0.13.7
- PySide6 - 6.7.0
- PyOpenGL - 3.1.7
PyQt はライセンスが GPL なのでプロプライエタリを想定するなら PySide にましょう。
Pythonを実装する
import pyqtgraph as pg import pyqtgraph.opengl as gl class WindowSample(): def __init__(self): self.window = {} self.app = pg.mkQApp(name="hogehoge") def showWindow(self): # Windowの表示 self.window = gl.GLViewWidget() self.window.show() self.window.setWindowTitle("Sample") self.window.setCameraPosition(distance=3) # グリッドを追加 grid = gl.GLGridItem() grid.scale(0.5, 0.5, 0.5) self.window.addItem(grid) self.app.exec() if __name__ == '__main__': root = WindowSample() root.showWindow()
この実装を書く前に通常のウインドウを出そうとしたらメソッドが変わっていました。
pg.GraphicsWindow() ↓ pg.GraphicsLayoutWidget()
Qt6になって破壊的変更多めでちょっと困ることが度々あるのはよくない感じですね。