Seaborn के countplot में प्रत्येक बार के ऊपर गिनती मान दिखाने के लिए ax.annotate() का उपयोग करें।
चरण
- फिगर आकार सेट करें और पैडिंग समायोजित करें
- एक कॉलम वाला Pandas DataFrame बनाएं
sns.countplot()से काउंटप्लॉट बनाएं- लौटे हुए एक्सिस के पैचेज़ पर पुनरावृति करके बार के ऊपर मान दिखाएं
plt.show()से प्रदर्शित करें
उदाहरण
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
# डेटा बनाएं
df = pd.DataFrame(dict(col1=np.array([2, 4, 1, 1, 1, 4])))
# काउंटप्लॉट बनाएं
ax = sns.countplot(x="col1", data=df)
# प्रत्येक बार के ऊपर गिनती दिखाएं
for p in ax.patches:
ax.annotate('{:.1f}'.format(p.get_height()),
(p.get_x() + 0.25, p.get_height() + 0.01))
plt.show()
आउटपुट
बार चार्ट जहां प्रत्येक बार के ऊपर उसकी गिनती (1.0, 3.0, 2.0 आदि) प्रदर्शित होती है।
सुधारित संस्करण
for p in ax.patches:
height = p.get_height()
ax.annotate(f'{int(height)}', # पूर्णांक के रूप में दिखाएं
(p.get_x() + p.get_width() / 2., height),
ha='center', va='bottom',
fontsize=12, fontweight='bold')
मुख्य बिंदु
ax.patchesबार पैचेज़ की सूची देता हैp.get_height()बार की ऊंचाई (गिनती) देता हैp.get_x() + p.get_width()/2बार का केंद्र x-निर्देशांक देता हैha='center', va='bottom'टेक्स्ट को बार के ऊपर केंद्रित करता है