Qt und Matplotlib

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
_nohtyp_
User
Beiträge: 127
Registriert: Mittwoch 8. Januar 2014, 15:38

Ich habe eine Qt-Gui mit 2 Tabs erstellt. Hier der Code:

Code: Alles auswählen

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'test.ui'
#
# Created: Mon Apr  7 16:37:19 2014
#      by: PyQt4 UI code generator 4.10.3
#
# WARNING! All changes made in this file will be lost!

from PyQt4 import QtCore, QtGui

try:
    _fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
    def _fromUtf8(s):
        return s

try:
    _encoding = QtGui.QApplication.UnicodeUTF8
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig, _encoding)
except AttributeError:
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig)

class Ui_Dialog(object):
    def setupUi(self, Dialog):
        Dialog.setObjectName(_fromUtf8("Dialog"))
        Dialog.resize(390, 296)
        self.tabWidget = QtGui.QTabWidget(Dialog)
        self.tabWidget.setGeometry(QtCore.QRect(19, 19, 351, 251))
        self.tabWidget.setObjectName(_fromUtf8("tabWidget"))
        self.tab = QtGui.QWidget()
        self.tab.setObjectName(_fromUtf8("tab"))
        self.tabWidget.addTab(self.tab, _fromUtf8(""))
        self.tab_2 = QtGui.QWidget()
        self.tab_2.setObjectName(_fromUtf8("tab_2"))
        self.tabWidget.addTab(self.tab_2, _fromUtf8(""))

        self.retranslateUi(Dialog)
        self.tabWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(Dialog)

    def retranslateUi(self, Dialog):
        Dialog.setWindowTitle(_translate("Dialog", "Dialog", None))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("Dialog", "Erster Tab", None))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("Dialog", "Zweiter Tab", None))

und der Code der Main-Datei:

Code: Alles auswählen

from PyQt4 import QtGui, QtCore
import sys
from test import Ui_Dialog as Dlg


class MeinDialog(QtGui.QDialog, Dlg):

    def __init__(self):
        QtGui.QDialog.__init__(self)
        self.setupUi(self)


app = QtGui.QApplication(sys.argv)
dialog = MeinDialog()
dialog.show()
sys.exit(app.exec_())
Wie kann ich nun in beiden Tabs matplot-Diagramme anzeigen lassen?
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Das Leben ist wie ein Tennisball.
_nohtyp_
User
Beiträge: 127
Registriert: Mittwoch 8. Januar 2014, 15:38

Und wie bekommt man die Graphen in die Tabs?
EmaNymton
User
Beiträge: 174
Registriert: Sonntag 30. Mai 2010, 14:07

In den ersten 4 Links von der Suche sind 3 Beispiele, die alle das gleiche Modul von matplotlib verwenden.

Code: Alles auswählen

...
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg
...
Diese kannst du dann wie ganz normale Widgets auch behandeln und sie in deine Tabs einfügen.
Antworten