🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Qt

QtはGUIプログラムの開発で広く使われているクロスプラットフォーム開発のフレームワークです。

Q&A

解決済

1回答

2799閲覧

Qt Designer内のGraphicsViewにpyqtgraphでグラフ作成について

BluePi85

総合スコア22

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Qt

QtはGUIプログラムの開発で広く使われているクロスプラットフォーム開発のフレームワークです。

0グッド

0クリップ

投稿2019/09/25 21:32

Windows10 64bit にて、Python3.6.8 用いてた GUIアプリケーションを作成しております。
Qt Designerで作成したForm内のGraphicsViewにpyqtgraphを用いてsin波形など波形描画に取り組んでいます。

Qt Designerで作成したuiファイルをpyuic5にて変換したコード(mainwindow.py)

# -*- coding: utf-8 -*- # Form implementation generated from reading ui file '.\mainwindow.ui' # # Created by: PyQt5 UI code generator 5.12.2 # # WARNING! All changes made in this file will be lost! from PyQt5 import QtCore, QtGui, QtWidgets class Ui_Form(object): def setupUi(self, Form): Form.setObjectName("Form") Form.resize(846, 514) self.graphicsView = PlotWidget(Form) self.graphicsView.setGeometry(QtCore.QRect(20, 20, 801, 401)) self.graphicsView.setObjectName("graphicsView") self.pushButton = QtWidgets.QPushButton(Form) self.pushButton.setGeometry(QtCore.QRect(170, 430, 151, 51)) self.pushButton.setObjectName("pushButton") self.retranslateUi(Form) self.pushButton.clicked.connect(Form.MyFunc) QtCore.QMetaObject.connectSlotsByName(Form) def retranslateUi(self, Form): _translate = QtCore.QCoreApplication.translate Form.setWindowTitle(_translate("Form", "Form")) self.pushButton.setText(_translate("Form", "PushButton")) from pyqtgraph import PlotWidget if __name__ == "__main__": import sys app = QtWidgets.QApplication(sys.argv) Form = QtWidgets.QWidget() ui = Ui_Form() ui.setupUi(Form) Form.show() sys.exit(app.exec_())

Qt Designerで作成したuiファイルをpyuicにて変換したコード(mainwindow.py)を表示させるコード

from PyQt5 import QtWidgets, uic from pyqtgraph.Qt import QtGui, QtCore import pyqtgraph as pg import sys import numpy as np import mainwindow class MainWindow(QtWidgets.QMainWindow): def __init__(self, parent=None): super().__init__(parent) self.ui = mainwindow.Ui_Form() self.ui.setupUi(self) def MyFunc(self): print('check') if __name__ == '__main__': app = QtWidgets.QApplication(sys.argv) main = MainWindow(![イメージ説明](89f0441012db6a1e0da839441c68497d.jpeg)main.show() sys.exit(app.exec_())

上記2つのコードを用いて、下図のように表示する事まで出来ました。
イメージ説明

大変お手数ですが、
PushButtomを押下時に、Form内のGraphicsViewに波形描画をさせるには、
どのようにしたら良いのでしょうか?

類似でmatplotlibの情報はありましたが、pyqtgraphでの情報が少なく
お知恵を頂けないでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

sin波形ではありませんが、以下のコードで解決しました。

def MyFunc(self): print('check') self.ui.graphicsView.plot(x = [0, 1, 2, 3 ,4], y = [0, 10, 20, 30 ,40], pen=(0 ,0, 255))

投稿2019/09/26 21:29

BluePi85

総合スコア22

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問