Python-XTicks in Teilbildern
Wenn ich ein einzelnes imshow
-Diagramm zeichne, kann ich verwenden
fig, ax = plt.subplots()
ax.imshow(data)
plt.xticks( [4, 14, 24], [5, 15, 25] )
verwenden, um meine xtick-Beschriftungen zu ersetzen.
Jetzt zeichne ich 12 imshow
-Plots mit
f, axarr = plt.subplots(4, 3)
axarr[i, j].imshow(data)
Wie kann ich meine xticks nur für eine dieser Teilplots ändern? Ich kann nur auf die Achsen der Teilplots mit axarr[i, j]
zugreifen. Wie kann ich auf plt
nur für einen bestimmten Teilplot zugreifen?
60
3
Es gibt zwei Möglichkeiten:
ax.set_xticks
undax.set_xticklabels
) oderplt.sca
, um die aktuellen Achsen für die Pyplot-Zustandsmaschine (d.h. dieplt
-Schnittstelle) zu setzen.Als Beispiel (dies illustriert auch die Verwendung von
setp
, um die Eigenschaften aller Subplots zu ändern):Siehe die (ziemlich) aktuelle Antwort im matplotlib-Repository, in der die folgende Lösung vorgeschlagen wird:
Wenn Sie die xticklabels setzen wollen:
Wenn Sie nur die Schriftgröße der xticklabels erhöhen wollen, indem Sie die Standardwerte und -positionen verwenden (was ich persönlich oft brauche und sehr praktisch finde):
Um alles auf einmal zu machen:
Scheint wie in der späteren Version von Matplotlib, die
set_yticks
undset_xticks
Funktionen entfernt werden. Was ich tat, war, statt der Einstellung der Größe der x,y ticks, ich änderte nur die Figur Größe.Ich weiß, es ist ein bisschen anti-intuitiv, aber das hat bei mir funktioniert... Lassen Sie mich wissen, ob es bessere Methoden gibt, um dieses Problem in den späteren Versionen von Matplotlib zu lösen. Danke