Überprüfen Sie die x-Achse der folgenden Abbildung. Wie kann ich die Beschriftungen etwas nach links verschieben, damit sie an den jeweiligen Häkchen ausgerichtet sind?
Ich drehe die Etiketten mit:
ax.set_xticks(xlabels_positions)
ax.set_xticklabels(xlabels, rotation=45)
Wie Sie sehen können, ist die Drehung jedoch in der Mitte der Textbeschriftungen zentriert. Das sieht so aus, als wären sie nach rechts verschoben.
Ich habe stattdessen versucht, dies zu verwenden:
ax.set_xticklabels(xlabels, rotation=45, rotation_mode="anchor")
... aber es macht nicht das, was ich mir gewünscht habe. Und "anchor"
scheint der einzige Wert zu sein, der für den rotation_mode
Parameter zulässig ist.
quelle
xlabels = ax.get_xticklabels()
wenn Sie nur die vorhandenen Beschriftungen verwenden möchten.Das Drehen der Etiketten ist sicherlich möglich. Beachten Sie jedoch, dass dies die Lesbarkeit des Textes verringert. Eine Alternative besteht darin, die Etikettenpositionen mit einem Code wie dem folgenden zu wechseln:
Weitere Hintergrundinformationen und Alternativen finden Sie in diesem Beitrag in meinem Blog
quelle
Eine einfache, schleifenfreie Alternative besteht darin, die
horizontalalignment
Text-Eigenschaft als Schlüsselwortargument fürxticks
[1] zu verwenden. In der kommentierten Zeile unten habe ich diexticks
Ausrichtung auf "richtig" gesetzt.(
yticks
Richtet den rechten Rand bereits standardmäßig mit dem Häkchen aus,xticks
scheint jedoch standardmäßig "Mitte" zu sein.)[1] Sie finden das in der xticks-Dokumentation beschrieben, wenn Sie nach dem Ausdruck " Texteigenschaften" suchen.
quelle
Wenn Sie die xtick-Beschriftungen nicht ändern möchten, können Sie einfach Folgendes verwenden:
plt.xticks(rotation=45)
quelle
plt.xticks(rotation=45,ha='right')