Ich habe eine Figur, die aus einem Bild von imshow()
, eine Kontur und ein Vektorfeld von quiver()
festgelegt besteht. Ich habe das Vektorfeld basierend auf einer anderen skalaren Größe gefärbt. Auf der rechten Seite meiner Abbildung habe ich eine colorbar()
gemacht. Diese colorbar()
stellt die Werte dar, die von imshow()
angezeigt werden (was in meinem Fall positiv und negativ sein kann). Ich würde gerne wissen, wie ich eine andere Farbleiste einrichten könnte, die auf den Werten der skalaren Größe basiert, auf der die Farbe der Vektoren basiert. Weiß jemand, wie man das macht?Matplotlib: Köcher und Imshow überlagert, wie kann ich zwei Farbbalken setzen?
Hier ist ein Beispiel für das Bild, das ich machen konnte. Beachten Sie, dass die Farben der Vektoren von Blau zu Rot wechseln. Gemäß der aktuellen Farbleiste bedeutet blau negativ. Ich weiß jedoch, dass die durch die Farbe des Vektors dargestellte Menge immer positiv ist.
Oh, ist das so einfach? Danke für deine Antwort! Ich bin gespannt: Woher weiß colorbar() welche Daten zu sehen sind? Wie funktioniert es, wenn ich es aus der Perspektive der Objets machen will? – MCF
@Heimdall aus der Dokumentation: "das Bild, ContourSet, usw., auf die die Farbleiste angewendet wird; dieses Argument ist obligatorisch für die Methode colorbar(), aber optional für die Funktion colorbar(), die den Standardwert auf das aktuelle Bild setzt." http://matplotlib.sourceforge.net/api/pyplot_api.html#matplotlib.pyplot.colorbar. Daher muss das Standardargument "colorbar" den zuletzt gezeichneten Künstler einfügen. Die Dokumente schlagen auch eine Möglichkeit vor, eine feinere Kontrolle darüber zu haben, welche Farbleiste -> Plot. – Hooked