[PYTHON] Nehmen Sie allgemeine Einstellungen mit der Unterzeichnung von matplotlib vor

Was du machen willst

Ich möchte gemeinsame Einstellungen wie Gitter und Beschriftungen für alle Achsen vornehmen, die mit der Unterzeichnung von matplotlib gezeichnet wurden. Example1.png

Methode 1

  1. Holen Sie sich eine Liste der Achsen.
  2. Schleife für jede Achse
  3. Ändern Sie die aktuelle Achse
# 1.Holen Sie sich eine Liste der Achsen
axs = plt.gcf().get_axes()

# 2.Schleife für jede Achse
for ax in axs:
    # 3.Aktuelle Achse ändern
    plt.axes(ax)

Codebeispiel

import matplotlib.pyplot as plt
import numpy as np

#Daten
x  = np.linspace(-np.pi, np.pi, 100)
y1 = np.sin(x)
y2 = np.cos(x)

# figure
plt.figure(figsize=(8,4))

#Grundstück 1
plt.subplot(1,2,1)
plt.plot(x,y1,label='sin')

#Grundstück 2
plt.subplot(1,2,2)
plt.plot(x,y2,label='cos')

#Holen Sie sich eine Liste der Achsen
axs = plt.gcf().get_axes()

#Schleife für jede Achse
for ax in axs:
    #Aktuelle Achse ändern
    plt.axes(ax)

    #Legende anzeigen
    plt.legend(loc=2)

    #Gitter
    plt.grid(linestyle='--')

    #Achsenbeschriftung
    plt.xlabel('x')
    plt.ylabel('y')

    #Achsenbereich
    plt.xlim([-np.pi, np.pi])
    plt.ylim([  -1.2,   1.2])

#Anpassung der Figur
plt.tight_layout()

Methode 2

  1. Listen Sie Daten und Beschriftungen auf.
  2. Schleife mit Aufzählung
  3. Vergessen Sie nicht, +1 zu plt.subplot hinzuzufügen
# 1.Listen Sie Daten und Beschriftungen auf.
Y    = [y1, y2]
lbls = ['sin', 'cos']

# 2.Schleife mit Aufzählung
for i, y in enumerate(Y):

    # 3. plt.Nebenhandlung ist+Vergiss es nicht
    plt.subplot(1,2,i+1)

Codebeispiel 2

# figure
plt.figure(figsize=(8,4))
# list
Y    = [y1, y2]
lbls = ['sin', 'cos']

for i, y in enumerate(Y):
    #Nebenhandlung
    plt.subplot(1,2,i+1)
    
    #Handlung
    plt.plot(x,y,label=lbls[i])

    #Legende anzeigen
    plt.legend(loc=2)

    #Gitter
    plt.grid(linestyle='--')

    #Achsenbeschriftung
    plt.xlabel('x')
    plt.ylabel('y')

    #Achsenbereich
    plt.xlim([-np.pi, np.pi])
    plt.ylim([  -1.2,   1.2])

#Anpassung der Figur
plt.tight_layout()

Die folgenden ergänzenden Informationen

gca, gcf Sie können die aktuelle Zahl mit plt.gcf () und die aktuellen Achsen mit plt.gca () abrufen. Sie können die aktuelle Achse auch mit plt.axes () angeben.

Hierarchische Struktur

Die Abbildung von matplotlib hat wie MATLAB eine hierarchische Struktur wie in der folgenden Abbildung gezeigt. 図1.png

Die Abbildung enthält Achsen und Linien in den Achsen. Mit plt.gcf (). Get_axes () können Sie eine Liste aller Achsen in der aktuellen Abbildung abrufen. Außerdem kann plt.gca (). Get_lines () alle Zeilen in den aktuellen Achsen abrufen.

Recommended Posts

Nehmen Sie allgemeine Einstellungen mit der Unterzeichnung von matplotlib vor
Richten Sie die Größe der Farbleiste an der Matplotlib aus
Machen Sie mit matplotlib eine teilweise gezoomte Figur
[Python] Lassen Sie uns matplotlib mit Japanisch kompatibel machen
Erstellen Sie eine API für das Switchbot-Thermo-Hygrometer mit Node-RED
[Python] Grenzachse des 3D-Graphen mit Matplotlib
Erhöhen Sie die Schriftgröße des Diagramms mit matplotlib
Animation mit matplotlib
Japanisch mit Matplotlib
Animation mit matplotlib
Histogramm mit Matplotlib
Erstellen Sie eine Animation mit matplotlib
Fügen Sie mit Matplotlib Informationen am unteren Rand der Abbildung hinzu
Ändern Sie die IP-Einstellungen mit Python in ACL von conoha
Passen Sie das Verhältnis mehrerer Zahlen mit der Rasterspezifikation von Matplotlib an
Bilden Sie Lambda-Schichten mit Lambda
2-Achsen-Plot mit Matplotlib
Machen Sie eine Yuma mit Discord.py
Heatmap von Python + matplotlib
Banddiagramm mit Matplotlib
Lernen Sie mit Chemo Informatics Matplotlib
Echtzeitzeichnung mit Matplotlib
Verschiedene Farbleisten mit Matplotlib
3D-Plot mit Matplotlib
Installation von matplotlib (Python 3.3.2)
Erstellen Sie Folien mit iPython
Stellen Sie die Achsen mit matplotlib ein
Führen Sie mit Python und Matplotlib eine Isostromanalyse offener Wasserkanäle durch
Erstellen Sie mit matplotlib eine GIF-Animation aus einer Seriennummerndatei
Formatieren Sie die Zeitachse des Pandas-Zeitreihendiagramms mit matplotlib neu
Stellen wir uns die Anzahl der mit Matplotlib mit dem Coronavirus infizierten Personen vor
Ich habe die Grundoperation von matplotlib in Jupyter Lab geschrieben