Czy w Matplotlib jest możliwe automatyczne generowanie wielu podplotów? Przykładem procesu, który chcę zautomatyzować, jest:
import matplotlib.pyplot as plt
figure = plt.figure()
ax1 = figure.add_subplot(2, 3, 1)
ax2 = figure.add_subplot(2, 3, 2)
ax3 = figure.add_subplot(2, 3, 3)
ax4 = figure.add_subplot(2, 3, 4)
ax5 = figure.add_subplot(2, 3, 5)
ax6 = figure.add_subplot(2, 3, 6)
Wykresy podrzędne wymagają unikalnych nazw, ponieważ pozwoli mi to robić takie rzeczy jak:
for ax in [ax1, ax2, ax3, ax4, ax5, ax6]:
ax.set_title("example")
Wielkie dzięki.
Dodatek: Czy są jakieś funkcje automatyzujące generowanie wielu podplotów? Co jeśli muszę powtórzyć powyższy proces 100 razy? Czy musiałbym wpisywać każdy ax1 do ax100?
Odpowiedzi:
5 dla odpowiedzi № 1Możesz użyć:
fig, axs = plt.subplots(2,3)
topory będą tablicą zawierającą podploty.
Lub natychmiast rozpakuj tablicę:
fig, ((ax1, ax2, ax3), (ax4, ax5, ax6)) = plt.subplots(2,3)