wenn ich eine Reihe von Teilplots mit einer Spalte und vielen Zeilen habe, d.h.:
%Vor%Wie kann ich die Höhe der ersten N Teilplots anpassen? Zum Beispiel, wenn ich 4 Subplots habe, jeder in seiner eigenen Zeile, möchte ich, dass alle von ihnen die gleiche Breite haben, aber die ersten 3 Subplots kürzer sind, dh ihre y-Achsen sind kleiner und nehmen weniger vom Plot ein als die Y-Achse des letzten Plots in der Reihe. Wie kann ich das tun?
danke.
Es gibt mehrere Möglichkeiten, dies zu tun. Am einfachsten (und am wenigsten flexibel) ist es, einfach so etwas wie:
zu nennen %Vor%Was wird dir so etwas geben:
Dies ist jedoch nicht sehr flexibel. Wenn Sie matplotlib & gt; = 1.0.0 verwenden, sehen Sie sich GridSpec an. Es ist ziemlich nett und ist eine viel flexiblere Art, Nebenhandlungen auszulegen.
Obwohl diese Frage alt ist, wollte ich eine sehr ähnliche Frage beantworten. @ Joes Verweis auf AxesGrid , war die Antwort auf meine Frage und hat sehr < Ich wollte diese Funktionalität der Vollständigkeit halber darstellen.
AxesGrid Funktionalität bietet die Möglichkeit, Plots unterschiedlicher Größe zu erstellen und sie ganz spezifisch über zu platzieren die Funktion subplot2grid
:
Beachten Sie, dass die maximalen Werte für row_n
, col_n
jeweils m-1
und n-1
sind, da die Nullindexierungsnotation verwendet wird.
Wenn wir speziell auf die Frage eingehen würden, wenn es 5 Subplots gäbe, bei denen das letzte Subplot doppelt so groß ist wie die anderen, könnten wir m=6
verwenden.
Tags und Links python matplotlib numpy scipy