So passen sie den abstand zwischen matplotlib-unterplots an
Sie können Subplots häufig verwenden, um in Matplotlib mehrere Plots nebeneinander anzuzeigen. Leider neigen diese Nebenhandlungen standardmäßig dazu, sich zu überschneiden.
Der einfachste Weg, dieses Problem zu lösen, ist die Verwendung der Matplotlib-Funktion Tight_layout() . In diesem Tutorial erfahren Sie, wie Sie diese Funktion in der Praxis nutzen.
Erstellen Sie Nebenhandlungen
Betrachten Sie die folgende Anordnung von 4 Unterplots in 2 Spalten und 2 Zeilen:
import matplotlib.pyplot as plt #define subplots fig, ax = plt. subplots (2, 2) #display subplots plt. show ()
Beachten Sie, dass sich die Nebenhandlungen etwas überschneiden.
Passen Sie den Unterplotabstand mit Tight_layout() an
Der einfachste Weg, dieses überlappende Problem zu lösen, ist die Verwendung der Matplotlib Tight_layout() -Funktion:
import matplotlib.pyplot as plt #define subplots fig, ax = plt. subplots (2, 2) fig. tight_layout () #display subplots plt. show ()
Passen Sie den Abstand der Nebenhandlungstitel an
In einigen Fällen können Sie auch Titel für jede Ihrer Nebenhandlungen festlegen. Leider neigt sogar die Funktion Tight_layout() dazu, dass sich die Titel der Nebenhandlungen überlappen:
import matplotlib.pyplot as plt #define subplots fig, ax = plt. subplots (2, 2) fig. tight_layout () #define subplot titles ax[0, 0]. set_title ('First Subplot') ax[0, 1]. set_title ('Second Subplot') ax[1, 0]. set_title ('Third Subplot') ax[1, 1]. set_title ('Fourth Subplot') #display subplots plt. show ()
Die Möglichkeit, dies zu beheben, besteht darin, den Höhenabstand zwischen Unterplots mithilfe des h_pad- Arguments zu erhöhen:
import matplotlib.pyplot as plt #define subplots fig, ax = plt. subplots (2, 2) fig. tight_layout (h_pad= 2 ) #define subplot titles ax[0, 0]. set_title ('First Subplot') ax[0, 1]. set_title ('Second Subplot') ax[1, 0]. set_title ('Third Subplot') ax[1, 1]. set_title ('Fourth Subplot') #display subplots plt. show ()
Passen Sie den gesamten Titelabstand an
Wenn Sie einen Gesamttitel haben, können Sie die Funktion subplots_adjust() verwenden, um sicherzustellen, dass er sich nicht mit den Titeln der Nebenhandlungen überschneidet:
import matplotlib.pyplot as plt #define subplots fig, ax = plt. subplots (2, 2) fig. tight_layout (h_pad= 2 ) #define subplot titles ax[0, 0]. set_title ('First Subplot') ax[0, 1]. set_title ('Second Subplot') ax[1, 0]. set_title ('Third Subplot') ax[1, 1]. set_title ('Fourth Subplot') #add overall title and adjust it so that it doesn't overlap with subplot titles fig.suptitle(' Overall Title ') plt.subplots_adjust(top= 0.85 ) #display subplots plt. show ()
Weitere Matplotlib-Tutorials finden Sie hier .