95 votes

Barchart avec étiquettes verticales en python/matplotlib

J'utilise matplotlib pour générer un graphique à barres (vertical). Le problème est que mes étiquettes sont assez longues. Existe-t-il un moyen de les afficher verticalement, soit dans la barre, soit au-dessus, soit en dessous ?

115voto

dalloliogm Points 2628

Voulez-vous dire quelque chose comme ça ?

>>> from matplotlib import *
>>> plot(xrange(10))
>>> yticks(xrange(10), rotation='vertical')

?

En général, pour afficher n'importe quel texte dans matplotlib avec une orientation verticale, vous pouvez ajouter le mot-clé rotation='vertical' .

Pour plus d'options, vous pouvez consulter help(matplotlib.pyplot.text)

La fonction yticks trace les ticks sur l'axe des y ; je ne sais pas si vous vouliez parler de cette fonction ou de la fonction ylabel, mais la procédure est toujours la même, vous devez ajouter rotation='vertical'.

Les options "alignement vertical" et "alignement horizontal", qui vous permettent de définir comment aligner le texte par rapport aux tiques ou à d'autres éléments, peuvent également vous être utiles.

67voto

Vlad Bezden Points 5024

Dans Jupyter Notebook, vous pouvez utiliser quelque chose comme ceci

%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np

plt.xticks(rotation='vertical')
plt.plot(np.random.randn(100).cumsum())

ou vous pouvez utiliser :

plt.xticks(rotation=90)

26voto

Yunzhao Xing Points 71

Veuillez consulter ce lien : https://python-graph-gallery.com/7-custom-barplot-layout/

import matplotlib.pyplot as plt

heights = [10, 20, 15]
bars = ['A_long', 'B_long', 'C_long']
y_pos = range(len(bars))
plt.bar(y_pos, heights)
# Rotation of the bars names
plt.xticks(y_pos, bars, rotation=90)

Le résultat sera le suivant enter image description here

J'espère que cela vous aidera.

6voto

Jouni K. Seppänen Points 15129

Je suggère d'examiner la galerie matplotlib . Au moins deux des exemples semblent pertinents :

  • text_rotation.py pour comprendre le fonctionnement de la mise en page d'un texte
  • barchart_demo2.py L'exemple suivant est un exemple de diagramme à barres dont la présentation est un peu plus compliquée que celle de l'exemple le plus simple.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X