from PySide import QtCore, QtGui
import pyqtgraph as pg
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
self.centralwidget = QtGui.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
MainWindow.setCentralWidget(self.centralwidget)
<span style="color: #008000">self</span><span style="color: #666666">.</span>verticalLayout <span style="color: #666666">=</span> QtGui<span style="color: #666666">.</span>QVBoxLayout(<span style="color: #008000">self</span><span style="color: #666666">.</span>centralwidget)
<span style="color: #008000">self</span><span style="color: #666666">.</span>verticalLayout<span style="color: #666666">.</span>setObjectName(<span style="color: #BA2121">"verticalLayout"</span>)
<span style="color: #008000">self</span><span style="color: #666666">.</span>graph01 <span style="color: #666666">=</span> pg<span style="color: #666666">.</span>PlotWidget(<span style="color: #008000">self</span><span style="color: #666666">.</span>centralwidget)
<span style="color: #008000">self</span><span style="color: #666666">.</span>graph01<span style="color: #666666">.</span>setObjectName(<span style="color: #BA2121">"graph01"</span>)
<span style="color: #008000">self</span><span style="color: #666666">.</span>verticalLayout<span style="color: #666666">.</span>addWidget(<span style="color: #008000">self</span><span style="color: #666666">.</span>graph01)
<span style="color: #008000">self</span><span style="color: #666666">.</span>psbtn <span style="color: #666666">=</span> QtGui<span style="color: #666666">.</span>QPushButton(<span style="color: #008000">self</span><span style="color: #666666">.</span>centralwidget)
<span style="color: #008000">self</span><span style="color: #666666">.</span>psbtn<span style="color: #666666">.</span>setObjectName(<span style="color: #BA2121">"psbtn"</span>)
<span style="color: #008000">self</span><span style="color: #666666">.</span>psbtn<span style="color: #666666">.</span>setText(<span style="color: #BA2121">"Plot"</span>)
<span style="color: #008000">self</span><span style="color: #666666">.</span>verticalLayout<span style="color: #666666">.</span>addWidget(<span style="color: #008000">self</span><span style="color: #666666">.</span>psbtn)
QtCore<span style="color: #666666">.</span>QObject<span style="color: #666666">.</span>connect(<span style="color: #008000">self</span><span style="color: #666666">.</span>psbtn, QtCore<span style="color: #666666">.</span>SIGNAL(<span style="color: #BA2121">"clicked()"</span>), <span style="color: #008000">self</span><span style="color: #666666">.</span>plot)
<span style="color: #008000; font-weight: bold">def</span> <span style="color: #0000FF">plot</span>(<span style="color: #008000">self</span>):
frq <span style="color: #666666">=</span> <span style="color: #666666">10.0</span>
duration <span style="color: #666666">=</span> <span style="color: #666666">1.0</span>
samples <span style="color: #666666">=</span> <span style="color: #666666">1001</span>
x <span style="color: #666666">=</span> np<span style="color: #666666">.</span>linspace(<span style="color: #666666">0</span>, duration, samples)
rad <span style="color: #666666">=</span> np<span style="color: #666666">.</span>linspace(<span style="color: #666666">0</span>, <span style="color: #666666">2</span> <span style="color: #666666">*</span> np<span style="color: #666666">.</span>pi <span style="color: #666666">*</span> frq, samples)
y <span style="color: #666666">=</span> np<span style="color: #666666">.</span>sin(rad)
<span style="color: #008000">self</span><span style="color: #666666">.</span>graph01<span style="color: #666666">.</span>plot(x, y)
import sys
import numpy as np
pg.setConfigOption('foreground', 'k')
pg.setConfigOption('background', 'w')
class ControlMainWindow(QtGui.QMainWindow):
def init(self, parent=None):
super(ControlMainWindow, self).init(parent)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
if name == "main":
app = QtGui.QApplication(sys.argv)
mySW = ControlMainWindow()#class no instance-ka
mySW.show()
sys.exit(app.exec_())
Mit anderen Worten, in dieser Reihenfolge
import pyqtgraph as pg
from PySide import QtCore, QtGui
http://www.pyqtgraph.org/documentation/how_to_use.html#pyqt-and-pyside Wahrscheinlich übersetzt.
PyQt und PySide
PyQtGraph unterstützt PyQt und PySide, Python-Wrapper für zwei beliebte QT-Bibliotheken. Beide Pakete bieten fast die gleichen APIs und Funktionen, aber aus verschiedenen Gründen sollten Sie sich für die eine oder andere entscheiden. Wenn pyqtgraph zum ersten Mal importiert wird, bestimmt pyqtgraph automatisch, welche Bibliothek mit den folgenden Prüfpunkten verwendet werden soll:
1 Wenn PyQt4 bereits importiert wurde, verwenden Sie es 2 Andernfalls verwenden Sie PySide, wenn es bereits importiert wurde. 3 Versuchen Sie andernfalls, PyQt4 und zu importieren 4 Wenn der PyQt4-Import fehlschlägt, importieren Sie PySide.
Wenn auf Ihrem System sowohl PyQt4- als auch PySide-Bibliotheken installiert sind und Sie pyqtgraph auf beiden Seiten verwenden möchten, importieren Sie diese Bibliothek einfach, bevor Sie pyqtgraph importieren. Bitte.
import PySide ## this will force pyqtgraph to use PySide instead of PyQt4 import pyqtgraph as pg
Früherer Fehler, Argument 1 hat den unerwarteten Typ 'PySide.QtGui.QWidget'.
In der Zeile self.graph01 = pg.PlotWidget (self.centralwidget) wollte pyqtgraph.PlotWidget etwas von PyQt im Argument haben ↓ 'PySide.QtGui.QWidget' ist eingetroffen. Argument 1 hat einen unerwarteten Typ 'PySide.QtGui.QWidget'. Ich denke das ist der Staat. PyQtGraph Eine Bibliothek zum Plotten in Python. http://www.pyqtgraph.org/
Nicht schlecht. Matplotlib ist eine Standardbibliothek zum Plotten in Python. PyQtGraph ist jedoch schneller. http://yukara-13.hatenablog.com/entry/2013/12/05/025655
Wenn Sie eine GUI mit Qt in Python erstellen möchten, können Sie zwischen diesen beiden Optionen wählen. Es gibt einen Unterschied zwischen LGPL und GPL in der Lizenz. PySide PL PL ・ LGPL. Ich habe das Gefühl, dass es im Internet nicht viele Informationen gibt, wahrscheinlich weil es nicht viele Leute gibt, die sie verwenden. (Ungefähr 214.000 bei der Suche nach Google) PyQt ・ ・ ・ GPL. Nach links kopieren. Ich habe das Gefühl, dass die Anzahl der Benutzer in den Suchergebnissen angezeigt wird. (Google-Suche 667.000)
Recommended Posts