Comment faire pivoter le texte des étiquettes à cocher sur l'axe X dans Matplotlib
-
plt.xticks(rotation= )
pour faire pivoter le texte de l’étiquette Xticks -
fig.autofmt_xdate(rotation= )
pour faire pivoter le texte des étiquettes Xticks -
ax.set_xticklabels(xlabels, Rotation= )
pour faire pivoter le texte des étiquettes Xticks -
plt.setp(ax.get_xticklabels(), Rotation=)
pour faire pivoter le texte des étiquettes Xticks -
ax.tick_params(axis='x', Labelrotation= )
pour faire pivoter le texte des étiquettes Xticks -
Rotation
xticklabels
alignant
Dans cet article du tutoriel, nous allons présenter différentes méthodes pour faire pivoter le texte des étiquettes à cocher sur l’axe X dans les étiquettes Python. Il comprend,
plt.xticks(rotation= )
fig.autofmt_xdate(rotation= )
ax.set_xticklabels(xlabels, rotation= )
plt.setp(ax.get_xticklabels(), rotation=)
ax.tick_params(axis='x', labelrotation= )
L’orientation par défaut du texte des étiquettes de coche dans l’axe des x est horizontale ou 0
degré. Cela apporte des inconvénients si le texte du label de la coche est trop long, comme le chevauchement entre des textes de label adjacents.
Les codes pour créer la figure ci-dessus sont,
from matplotlib import pyplot as plt
from datetime import datetime, timedelta
values = range(10)
dates = [datetime.now() - timedelta(days=_) for _ in range(10)]
fig, ax = plt.subplots()
plt.plot(dates, values)
plt.grid(True)
plt.show()
plt.xticks(rotation= )
pour faire pivoter le texte de l’étiquette Xticks
from matplotlib import pyplot as plt
from datetime import datetime, timedelta
values = range(10)
dates = [datetime.now() - timedelta(days=_) for _ in range(10)]
fig, ax = plt.subplots()
plt.plot(dates, values)
plt.xticks(rotation=45)
plt.grid(True)
plt.show()
plt.xticks(rotation=45)
plt.xticks
récupère ou définit les propriétés des emplacements des cocheurs et des étiquettes de l’axe des x.
rotation
est l’angle de rotation dans le sens anti-horaire du texte du label de l’axe x.
fig.autofmt_xdate(rotation= )
pour faire pivoter le texte des étiquettes Xticks
from matplotlib import pyplot as plt
from datetime import datetime, timedelta
values = range(10)
dates = [datetime.now() - timedelta(days=_) for _ in range(10)]
fig, ax = plt.subplots()
plt.plot(dates, values)
fig.autofmt_xdate(rotation=45)
plt.grid(True)
plt.show()
autofmt_xdate
fait tourner les étiquettes de tique et les aligne à droite automatiquement si l’étiquette est un objet date
.
Mais cela ne fonctionne pas seulement avec l’objet date
mais aussi avec la chaîne de texte normale du label.
from matplotlib import pyplot as plt
from datetime import datetime, timedelta
values = range(10)
dates = [datetime.now() - timedelta(days=_) for _ in range(10)]
xlabels = [
"Zero",
"One",
"Two",
"Three",
"Four",
"Five",
"Six",
"Seven",
"Eight",
"Nine",
]
fig, ax = plt.subplots()
plt.plot(dates, values)
ax.set_xticklabels(xlabels)
fig.autofmt_xdate(rotation=45)
plt.grid(True)
plt.show()
ax.set_xticklabels(xlabels, Rotation= )
pour faire pivoter le texte des étiquettes Xticks
set_xticklabels
définit les étiquettes x-tick avec la liste des étiquettes de chaînes de caractères.
Cette liste d’étiquettes de chaînes de caractères peut être une liste nouvellement spécifiée ou la liste d’étiquettes existante du graphe courant lue par get_xticklabels()
.
from matplotlib import pyplot as plt
from datetime import datetime, timedelta
values = range(10)
dates = [datetime.now() - timedelta(days=_) for _ in range(10)]
xlabels = [
datetime.strftime(datetime.now() - timedelta(days=_), "%m/%d/%Y") for _ in range(10)
]
fig, ax = plt.subplots()
plt.plot(dates, values)
ax.set_xticklabels(xlabels, rotation=45, ha="right")
plt.grid(True)
plt.show()
plt.setp(ax.get_xticklabels(), Rotation=)
pour faire pivoter le texte des étiquettes Xticks
matplotlib.pyplot.setp
définit une propriété sur un objet d’artiste.
plt.setp(ax.get_xticklabels(), rotation=)
définit la propriété rotation
de l’objet xtick labels.
from matplotlib import pyplot as plt
from datetime import datetime, timedelta
values = range(10)
dates = [datetime.now() - timedelta(days=_) for _ in range(10)]
xlabels = [
datetime.strftime(datetime.now() - timedelta(days=_), "%m/%d/%Y") for _ in range(10)
]
fig, ax = plt.subplots()
plt.plot(dates, values)
plt.setp(ax.get_xticklabels(), rotation=45, ha="right")
plt.grid(True)
plt.tight_layout()
plt.show()
ax.tick_params(axis='x', Labelrotation= )
pour faire pivoter le texte des étiquettes Xticks
tick_params
définit les paramètres des ticks, des étiquettes de tick et des lignes de grille.
ax.tick_params(axis='x', labelrotation= )
définit la propriété labelrotation
de l’étiquette de la tique dans l’axe x
, ou en d’autres termes, l’axe X.
from matplotlib import pyplot as plt
from datetime import datetime, timedelta
values = range(10)
dates = [datetime.now() - timedelta(days=_) for _ in range(10)]
xlabels = [
datetime.strftime(datetime.now() - timedelta(days=_), "%m/%d/%Y") for _ in range(10)
]
fig, ax = plt.subplots()
plt.plot(dates, values)
ax.tick_params(axis="x", labelrotation=45)
plt.grid(True)
plt.show()
Rotation xticklabels
alignant
nous utilisons l’argument ha='right'
dans les codes de l’exemple ci-dessus, ce qui signifie que horizontal alignment est right
.
ha='right'
aligne l’extrémité droite du texte de l’étiquette sur les tiques.
ha='left'
aligne l’extrémité gauche du texte de l’étiquette sur les tiques.
ha='center'
aligne le centre du texte du label sur les cases à cocher.
from matplotlib import pyplot as plt
from datetime import datetime, timedelta
xvalues = range(5)
yvalues = xvalues
xlabels = [
datetime.strftime(datetime.now() - timedelta(days=_), "%m/%d/%Y") for _ in xvalues
]
alignment = ["right", "left", "center"]
fig, axes = plt.subplots(1, 3)
for n, ax in enumerate(axes):
ax.plot(xvalues, yvalues)
ax.set_title(alignment[n] + "alignment")
ax.set_xticks(xvalues)
ax.set_xticklabels(xlabels, rotation=45, ha=alignment[n])
ax.grid(True)
plt.show()
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn FacebookArticle connexe - Matplotlib Axes
- Comment définir la taille de la police des étiquettes à cocher dans Matplotlib
- Comment ajouter une étiquette sur l'axe des y à l'axe des y secondaire dans Matplotlib
- Comment tracer des axes logarithmiques dans Matplotlib
- Comment faire un tracé carré avec des axes égaux dans Matplotlib
- Comment définir des limites pour les axes dans Matplotlib