Il metodo add_subplot () ha diverse firme di chiamata:
add_subplot(nrows, ncols, index, **kwargs)
add_subplot(pos, **kwargs)
add_subplot(ax)
add_subplot()
<- dalla 3.1.0
Chiamate 1 e 2:
Le chiamate 1 e 2 ottengono le stesse cose l'una dell'altra (fino a un limite, spiegato di seguito). Pensa a loro come prima specificando il layout della griglia con i loro primi 2 numeri (2x2, 1x8, 3x4, ecc.), Ad esempio:
f.add_subplot(3,4,1)
# is equivalent to:
f.add_subplot(341)
Entrambi producono una disposizione di sottotrame di (3 x 4 = 12) trame secondarie in 3 file e 4 colonne. Il terzo numero in ciascuna chiamata indica quale oggetto asse restituire, a partire da 1 in alto a sinistra, aumentando a destra .
Questo codice illustra i limiti dell'utilizzo della chiamata 2:
#!/usr/bin/env python3
import matplotlib.pyplot as plt
def plot_and_text(axis, text):
'''Simple function to add a straight line
and text to an axis object'''
axis.plot([0,1],[0,1])
axis.text(0.02, 0.9, text)
f = plt.figure()
f2 = plt.figure()
_max = 12
for i in range(_max):
axis = f.add_subplot(3,4,i+1, fc=(0,0,0,i/(_max*2)), xticks=[], yticks=[])
plot_and_text(axis,chr(i+97) + ') ' + '3,4,' +str(i+1))
# If this check isn't in place, a
# ValueError: num must be 1 <= num <= 15, not 0 is raised
if i < 9:
axis = f2.add_subplot(341+i, fc=(0,0,0,i/(_max*2)), xticks=[], yticks=[])
plot_and_text(axis,chr(i+97) + ') ' + str(341+i))
f.tight_layout()
f2.tight_layout()
plt.show()
Puoi vedere con chiamata 1 sull'LHS che puoi restituire qualsiasi oggetto asse, tuttavia con la chiamata 2 sull'RHS puoi solo restituire fino all'indice = 9 rendering delle sottotrame j), k) el) inaccessibili usando questa chiamata.
Cioè illustra questo punto dalla documentazione:
pos è un numero intero a tre cifre, in cui la prima cifra è il numero di righe, la seconda il numero di colonne e la terza l'indice della sottotrama. cioè fig.add_subplot (235) è uguale a fig.add_subplot (2, 3, 5). Si noti che tutti i numeri interi devono essere inferiori a 10 affinché questo modulo funzioni .
Chiama 3
In rare circostanze, add_subplot può essere chiamato con un singolo argomento, un'istanza di assi della sottotrama già creata nella figura attuale ma non nell'elenco di assi della figura.
Chiama 4 (dalla 3.1.0):
Se non vengono passati argomenti posizionali, il valore predefinito è (1, 1, 1).
cioè, riproducendo la chiamata fig.add_subplot(111)
nella domanda.