Vorbei Grundstücke aus einer Klasse

Habe ich versucht, übergeben Sie eine pyplot Figur aus einer externen Klasse (wie in die importiert werden müssen), aber waren erfolglos. Ich weiß gar nicht, ob dies ist die Art, wie ich sein sollte, das problem anzugehen, der immer eine Handlung (nicht gezeigt) aus einer Klasse.

from matplotlib.figure import Figure
import matplotlib.pyplot as plt

class Plotter(object):
    def __init__(self, xval=None, yval=None):
        self.xval = xval
        self.yval = yval

    def plotthing(self):
        f = Figure(1)
        sp = f.add_subplot(111)
        sp.plot(self.xval, self.yval, 'o-')
        return f

So, dass die Klasse etwa (Namen plotfile.py). Hier ist der Großteil andere script.

from plotfile import Plotter
import matplotlib.pyplot as plt

app = Plotter(xval=range(0,10), yval=range(0,10))
plot = app.plotthing()
app.show(plot)

Ich habe versucht, verschiedene Variationen über dieses Thema und habe versucht mein bestes googlefu, aber nicht ohne Erfolg. Jegliche Hilfe würde sehr geschätzt werden. Wenn ich bin Weg auf meinen Ansatz zu diesem bin ich sehr offen, um zu hören, wie es zu tun richtig. Danke.

  • Was ist der app.Karte(plot) tun sollen? Was bedeutet der code wirklich tun? Was erwarten Sie, es zu tun?
  • Ich nur wollen, um pop-up ein plot, wie wenn Sie geben Sie p = plt.plot(xval, yval) dann plt.show(). Ich will einfach nur das heben schwerer einrichten der plots in einer Klasse, so kann ich es nennen, von verschiedenen Programmen.
  • Dann definieren Sie eine Methode show() aufruft plt.show(). Derzeit Ihre zweite Skript ruft eine solche Methode, aber es ist nirgendwo definiert.
InformationsquelleAutor deadstump | 2012-09-27
Schreibe einen Kommentar