Ändern der Achsengröße mit eingeschränktem Layout #

Beim eingeschränkten Layout wird versucht, die Größe von Teildiagrammen in einer Abbildung so zu ändern, dass es keine Überschneidungen zwischen Achsenobjekten und Beschriftungen auf den Achsen gibt.

Weitere Informationen finden Sie im Leitfaden zum eingeschränkten Layout und im Leitfaden zum engen Layout für eine Alternative.

import matplotlib.pyplot as plt


def example_plot(ax):
    ax.plot([1, 2])
    ax.set_xlabel('x-label', fontsize=12)
    ax.set_ylabel('y-label', fontsize=12)
    ax.set_title('Title', fontsize=14)

Wenn wir constrained_layout nicht verwenden, überlappen Beschriftungen die Achsen

fig, axs = plt.subplots(nrows=2, ncols=2, constrained_layout=False)

for ax in axs.flat:
    example_plot(ax)
Titel, Titel, Titel, Titel

das Hinzufügen constrained_layout=Truepasst sich automatisch an.

fig, axs = plt.subplots(nrows=2, ncols=2, constrained_layout=True)

for ax in axs.flat:
    example_plot(ax)
Titel, Titel, Titel, Titel

Unten ist ein komplizierteres Beispiel mit verschachtelten Gridspecs.

fig = plt.figure(constrained_layout=True)

import matplotlib.gridspec as gridspec

gs0 = gridspec.GridSpec(1, 2, figure=fig)

gs1 = gridspec.GridSpecFromSubplotSpec(3, 1, subplot_spec=gs0[0])
for n in range(3):
    ax = fig.add_subplot(gs1[n])
    example_plot(ax)


gs2 = gridspec.GridSpecFromSubplotSpec(2, 1, subplot_spec=gs0[1])
for n in range(2):
    ax = fig.add_subplot(gs2[n])
    example_plot(ax)

plt.show()
Titel, Titel, Titel, Titel, Titel

Verweise

In diesem Beispiel wird die Verwendung der folgenden Funktionen, Methoden, Klassen und Module gezeigt:

Gesamtlaufzeit des Skripts: (0 Minuten 2,712 Sekunden)

Galerie generiert von Sphinx-Gallery