не отображается график PyQt5. что не так?
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from pyqtgraph import PlotWidget, plot
from test import Ui_MainWindow
from pyqtgraph import PlotWidget, plot
import pyqtgraph as pg
class MainWindow(QtWidgets.QMainWindow):
def __init__(self, *args, **kwargs):
super(MainWindow, self).__init__(*args, **kwargs)
# Загрузите страницу интерфейса
ui.loadUi('file.ui', self)
grid = QtWidgets.QGridLayout(self.centralwidget)
grid.addWidget(self.graphWidget, 0, 0)
self.plot([1,2,3,4,5,6,7,8,9,10], [30,32,34,32,33,31,29,32,35,45])
# мы добавили метод plot(), который принимает два массива:
# temperature и hour, затем строит данные с помощью метода graphWidget.plot().
def plot(self, hour, temperature):
self.graphWidget.plot(hour, temperature)
#if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
по примеру на этом же сайте все получалось и график был, а у меня вот что получается ?
вот что выдает, когда я пишу так, как у вас(с изменениями). я не понимаю что делаю не так

Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
я отметил для вас строки, в которые надо внести изменения
import sys
from PyQt5 import QtCore, QtGui, QtWidgets, uic # + uic
from pyqtgraph import PlotWidget, plot
#from test import Ui_MainWindow # ---
from pyqtgraph import PlotWidget, plot
import pyqtgraph as pg
class MainWindow(QtWidgets.QMainWindow):
def __init__(self, *args, **kwargs):
super(MainWindow, self).__init__(*args, **kwargs)
# Загрузите страницу интерфейса
# ui.loadUi('file.ui', self) # ---
# vvv
uic.loadUi('mainPlotWidget.ui', self) # mainPlotWidget.ui
grid = QtWidgets.QGridLayout(self.centralwidget)
grid.addWidget(self.graphWidget, 0, 0)
self.plot([1,2,3,4,5,6,7,8,9,10], [30,32,34,32,33,31,29,32,35,45])
# мы добавили метод plot(), который принимает два массива:
# temperature и hour, затем строит данные с помощью метода graphWidget.plot().
def plot(self, hour, temperature):
self.graphWidget.plot(hour, temperature)
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
# MainWindow = QtWidgets.QMainWindow() # ---
# ui = Ui_MainWindow() # ---
# ui.setupUi(MainWindow) # ---
# MainWindow.show() # ---
main = MainWindow() # +++
main.show() # +++
sys.exit(app.exec_())
mainPlotWidget.ui
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>631</width>
<height>466</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="PlotWidget" name="graphWidget" native="true">
<property name="geometry">
<rect>
<x>89</x>
<y>59</y>
<width>471</width>
<height>291</height>
</rect>
</property>
</widget>
</widget>
<widget class="QMenuBar" name="menubar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>631</width>
<height>21</height>
</rect>
</property>
</widget>
<widget class="QStatusBar" name="statusbar"/>
</widget>
<customwidgets>
<customwidget>
<class>PlotWidget</class>
<extends>QWidget</extends>
<header>pyqtgraph</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>
