Un bar chart représente des valeurs sous forme de barres. Idéal pour comparer des catégories.
Syntaxe
plt.bar(categories, valeurs)Les deux listes doivent avoir la même longueur. Chaque catégorie devient une barre.
plt.bar(x, y) barres verticales
plt.barh(x, y) barres horizontales (utile pour beaucoup de labels)plt.bar(cats, vals,
color=['#F0A500', '#00C878', '#9B6DFF', '#3B9EFF'], # une couleur par barre
edgecolor='black',
width=0.8 # largeur (0 à 1)
)categories = ['Python', 'SQL', 'Maths', 'Anglais']
scores = [85, 72, 90, 68]
colors = ['#F0A500', '#00C878', '#9B6DFF', '#3B9EFF']plt.figure(figsize=(8, 5))
plt.bar(categories, scores, color=colors)
plt.title('Scores par module')
plt.ylabel('Score (%)')
plt.ylim(0, 100)
plt.savefig('/tmp/barplot.png')bars = plt.bar(categories, scores)
for bar, v in zip(bars, scores):
plt.text(bar.get_x() + bar.get_width()/2, v + 1, str(v), ha='center')Barres groupées (côte à côte) :
import numpy as np
x = np.arange(len(categories))
plt.bar(x - 0.2, serie1, width=0.4, label='2025')
plt.bar(x + 0.2, serie2, width=0.4, label='2026')
plt.xticks(x, categories)Barres empilées
plt.bar(categories, serie1, label='A')
plt.bar(categories, serie2, bottom=serie1, label='B')plt.bar n'est pas un histogramme : un histogramme (plt.hist) compte la fréquence d'une variable continue, alors qu'un bar chart représente des valeurs déjà calculées par catégorie.
Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →