PythonのPyQtGraphではぐれメタルを描画する方法を説明する。
完成イメージ
コード
#!/usr/bin/env python3
import sys
from PyQt6.QtWidgets import QApplication, QWidget
import pyqtgraph as pg
class GuiWindow(QWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.グラフを描画する()
def グラフを描画する(self):
self.graph = pg.GraphicsLayoutWidget(show=True)
self.p = self.graph.addPlot()
# 体
self.p.plot(x=[10, 20, 30, 40, 50, 60, 70],
y=[10, 5, 0, 0, 0, 5, 10],
pen=pg.mkPen('gray', width=100))
self.p.plot(x=[10, 20, 30, 40, 50, 60, 70],
y=[15, 15, 10, 10, 10, 15, 20],
pen=pg.mkPen('gray', width=100))
self.p.plot(x=[10, 20, 30, 40, 45, 50, 60, 70],
y=[15, 20, 30, 38, 37, 33, 25, 20],
pen=pg.mkPen('gray', width=100))
self.p.plot(x=[20, 30, 40, 50, 60],
y=[15, 25, 25, 25, 25],
pen=pg.mkPen('gray', width=100))
# 目
self.p.plot(x=[35], y=[30],
symbol='o', symbolBrush='w', symbolSize=30)
self.p.plot(x=[35], y=[30],
symbol='o', symbolBrush='black', symbolSize=10)
self.p.plot(x=[45], y=[30],
symbol='o', symbolBrush='w', symbolSize=30)
self.p.plot(x=[45], y=[30],
symbol='o', symbolBrush='black', symbolSize=10)
# 口
self.p.plot(x=[30, 32, 35, 45, 50],
y=[25, 22, 20, 20, 25],
pen=pg.mkPen('black', width=20))
# 泡
self.p.plot(x=[20], y=[40],
symbol='o', symbolBrush='gray', symbolSize=30)
self.p.plot(x=[40], y=[60],
symbol='o', symbolBrush='gray', symbolSize=30)
self.p.plot(x=[60], y=[50],
symbol='o', symbolBrush='gray', symbolSize=30)
# 枠
self.p.plot(x=[-10, 100, 100, -10],
y=[-10, -10 , 100, 100],
pen=pg.mkPen('black', width=5))
if __name__ == '__main__':
app = QApplication(sys.argv)
window = GuiWindow()
sys.exit(app.exec())
リンク
まとめ
PythonのPyQtGraphではぐれメタルを描画する方法を説明した。
コメント