Hoe u de afstand tussen matplotlib-subplots kunt aanpassen


Vaak kunt u subplots gebruiken om meerdere plots naast elkaar weer te geven in Matplotlib. Helaas overlappen deze subplots elkaar standaard.

De eenvoudigste manier om dit probleem op te lossen is door de Matplotlib Tight_layout() functie te gebruiken. In deze tutorial wordt uitgelegd hoe u deze functie in de praktijk kunt gebruiken.

Subplots maken

Beschouw de volgende opstelling van 4 subplots in 2 kolommen en 2 rijen:

 import matplotlib.pyplot as plt

#define subplots
fig, ax = plt. subplots (2, 2)

#display subplots
plt. show ()

Merk op hoe de subplots elkaar een beetje overlappen.

Pas de subplot-afstand aan met Tight_layout()

De eenvoudigste manier om dit overlappende probleem op te lossen is door de Matplotlib Tight_layout() functie te gebruiken:

 import matplotlib.pyplot as plt

#define subplots
fig, ax = plt. subplots (2, 2)
fig. tight_layout ()

#display subplots
plt. show ()

Pas de subplot-afstand Matplotlib aan

Pas de afstand tussen subplottitels aan

In sommige gevallen kunt u ook titels hebben voor elk van uw subplots. Helaas heeft zelfs de functie Tight_layout() de neiging om subplottitels te overlappen:

 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 () 

Subplots met titels in Matplotlib

De manier om dit op te lossen is door de hoogte-opvulling tussen subplots te vergroten met behulp van het h_pad- argument:

 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 () 

Matplotlib-subplotkopafstand

Pas de algemene titelafstand aan

Als je een algemene titel hebt, kun je de functie subplots_adjust() gebruiken om ervoor te zorgen dat deze niet overlapt met de subplottitels:

 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 () 

Kopafstand in Matplotlib

Je kunt hier meer Matplotlib-tutorials vinden.

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert