Matplotlib und FreeCAD in PyQt-UI
Verfasst: Samstag 23. August 2014, 01:23
Hallo zusammen,
und zwar bin ich dabei ein Programm zu schreiben, welches ein mit Qt erstelltes Interfache besitzt und Matplotlib und FreeCAD beinhalten soll. Matplotlib ist importiert und das plotten funktioniert sehr gut. Dass Problem ist, dass ich Dinge wie die Achsenbeschriftung etc. nicht einstellen kann, da ich nur FigureCanvas importiere, meine Frage ist daher, wie kann ich Funktionen wie zum Beispiel Legend() dem Plot hinzufügen?
später soll noch FreeCAD in das Interface intergiert werden, jemand eine Idee? Habe schon mehrere Ansätze gelesen und ausprobiert, viele funktionieren nicht.
Grüße
Mark mit K
und zwar bin ich dabei ein Programm zu schreiben, welches ein mit Qt erstelltes Interfache besitzt und Matplotlib und FreeCAD beinhalten soll. Matplotlib ist importiert und das plotten funktioniert sehr gut. Dass Problem ist, dass ich Dinge wie die Achsenbeschriftung etc. nicht einstellen kann, da ich nur FigureCanvas importiere, meine Frage ist daher, wie kann ich Funktionen wie zum Beispiel Legend() dem Plot hinzufügen?
Code: Alles auswählen
from PyQt4 import QtGui
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.figure import Figure
class MplCanvas(FigureCanvas):
def __init__(self):
self.fig = Figure()
self.ax = self.fig.add_subplot(111)
FigureCanvas.__init__(self, self.fig)
FigureCanvas.setSizePolicy(self, QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Expanding)
FigureCanvas.updateGeometry(self)
class PLOT(QtGui.QWidget):
def __init__(self, parent = None):
QtGui.QWidget.__init__(self, parent)
self.canvas = MplCanvas()
self.vbl = QtGui.QVBoxLayout()
self.vbl.addWidget(self.canvas)
self.setLayout(self.vbl)
Grüße
Mark mit K