Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Memusatkan Label Data dalam Carta Bar Bertindan Matplotlib?
Carta Bar Bertindan dengan Label Berpusat: Penyelesaian yang Diperbaiki Menggunakan bar_label
Dalam matplotlib, kaedah yang diperhalusi untuk memusatkan label data dengan tepat dalam susunan carta bar tersedia menggunakan fungsi bar_label. Begini caranya:
import pandas as pd import matplotlib.pyplot as plt
# sample DataFrame df = pd.DataFrame({'A': [45, 17, 47], 'B': [91, 70, 72], 'C': [68, 43, 13]})
ax = df.plot(kind='bar', stacked=True, figsize=(8, 6), rot=0, xlabel='Class', ylabel='Count')
for c in ax.containers: ax.bar_label(c, label_type='center')
Penyesuaian Pilihan
labels = [v.get_height() if v.get_height() > 0 else '' for v in c] # for segments with small or zero values
ax.bar_label(c, fmt=lambda x: f'{x:.0f}' if x > 0 else '', label_type='center') # to show no decimal places
Seaborn Alternatif
Jika anda lebih suka bekerja dengan seaborn, anda juga boleh membuat carta bar bertindan dan labelkan bar.
Atas ialah kandungan terperinci Bagaimana untuk Memusatkan Label Data dalam Carta Bar Bertindan Matplotlib?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!