colorbar bei Figure-Objekten

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
möppi
User
Beiträge: 39
Registriert: Samstag 29. März 2014, 09:18

Hi,

Ich habe eine Funktion geschrieben, die ein Figure-Objekt ausgeben soll:

Code: Alles auswählen

def color_plot(x,y,z,x_label="x",y_label="y",z_label="z"):
    f=Figure()
    a=f.add_subplot(111)
    a.pcolormesh(x,y,z.T)
    a.set_xlabel(x_label)
    a.set_ylabel(y_label)
    return f
Ich bin schon länger am überlegen, wie ich einen Color-Bar einfügen kann, also eine Skala für die Farbkodierung. Kann mir jemand weiter helfen?
Zuletzt geändert von möppi am Dienstag 11. November 2014, 16:37, insgesamt 1-mal geändert.
Benutzeravatar
MagBen
User
Beiträge: 799
Registriert: Freitag 6. Juni 2014, 05:56
Wohnort: Bremen
Kontaktdaten:

Hier ist ein Beispiel mit pcolormesh und colorbar:
http://www.python-forum.de/viewtopic.php?f=1&t=34871
a fool with a tool is still a fool, www.magben.de, YouTube
Benutzeravatar
MagBen
User
Beiträge: 799
Registriert: Freitag 6. Juni 2014, 05:56
Wohnort: Bremen
Kontaktdaten:

oder in Deinem Code (ungetestet):

Code: Alles auswählen

def color_plot(x,y,z,x_label="x",y_label="y",z_label="z"):
    f=Figure()
    a=f.add_subplot(111)
    pcolormesh=a.pcolormesh(x,y,z.T)
    f.colorbar(pcolormesh, orientation="vertical")
    a.set_xlabel(x_label)
    a.set_ylabel(y_label)
    return f
a fool with a tool is still a fool, www.magben.de, YouTube
möppi
User
Beiträge: 39
Registriert: Samstag 29. März 2014, 09:18

MagBen hat geschrieben:Hier ist ein Beispiel mit pcolormesh und colorbar:
http://www.python-forum.de/viewtopic.php?f=1&t=34871
Der Fragesteller unter diesem Link war ich ;) und du hattest mir auch einen sehr hilfreichen Tipp gegeben. Allerdings ist es diesmal etwas anderes. Ich weiß einfach nicht wie man wie man einem Figure-Objekt ein Colorbar zuordnet. Die Syntax wäre sowas wie:

Code: Alles auswählen

 f.colorbar(irgendwelche komischen Argumente)
möppi
User
Beiträge: 39
Registriert: Samstag 29. März 2014, 09:18

MagBen hat geschrieben:oder in Deinem Code (ungetestet):

Code: Alles auswählen

def color_plot(x,y,z,x_label="x",y_label="y",z_label="z"):
    f=Figure()
    a=f.add_subplot(111)
    pcolormesh=a.pcolormesh(x,y,z.T)
    f.colorbar(pcolormesh, orientation="vertical")
    a.set_xlabel(x_label)
    a.set_ylabel(y_label)
    return f
Vielen Dank. Ich werde es nachher mal aussprobieren, wenn ich am PC sitze. Ein bisschen komisch finde ich die Zeile:

Code: Alles auswählen

pcolormesh=a.pcolormesh(x,y,z.T)
Kannst du mir mal erklären, was genau das bedeuted?
Benutzeravatar
MagBen
User
Beiträge: 799
Registriert: Freitag 6. Juni 2014, 05:56
Wohnort: Bremen
Kontaktdaten:

Axes.pcolormesh erzeugt ein pcolormesh und gibt ein Objekt zurück. Das Zurückgegebene Objekt habe ich pcolormesh genannt. (Es ist vom Typ matplotlib.collections.QuadMesh.) Du brauchst dieses Objekt um es an die Methode Figure.colorbar zu übergeben.
a fool with a tool is still a fool, www.magben.de, YouTube
Antworten