कॉलम मानों द्वारा स्कैटर प्लॉट्स को रंगना
पायथन में, मैटप्लोटलिब लाइब्रेरी स्कैटर प्लॉट सौंदर्यशास्त्र को अनुकूलित करने के कई साधन प्रदान करती है। एक सामान्य कार्य विशिष्ट कॉलम में मानों के आधार पर रंग निर्दिष्ट करना है।
सीबॉर्न इंटीग्रेशन
एक समाधान सीबॉर्न लाइब्रेरी का लाभ उठाना है, जो मैटप्लोटलिब पर आधारित है। सीबॉर्न एसएनएस.रेलप्लॉट और एसएनएस.फेसेटग्रिड जैसे उच्च-स्तरीय फ़ंक्शन प्रदान करता है जो आपको विशिष्ट कॉलम पर स्कैटर प्लॉट को आसानी से मैप करने की अनुमति देता है। रंग पैरामीटर निर्दिष्ट करके, आप श्रेणी लेबल वाले तीसरे कॉलम के अनुसार बिंदुओं को रंग सकते हैं।
import seaborn as sns
sns.relplot(data=df, x='Weight (kg)', y='Height (cm)', hue='Gender')
सीधे Matplotlib का उपयोग करना
वैकल्पिक रूप से, आप स्कैटर प्लॉट बनाने और मैन्युअल रूप से रंग निर्दिष्ट करने के लिए सीधे Matplotlib के plt.scatter फ़ंक्शन का उपयोग कर सकते हैं। इसके लिए एक कस्टम रंग शब्दकोश बनाने की आवश्यकता है जो श्रेणी लेबल को रंगों से मैप करता है।
def dfScatter(df, xcol='Height', ycol='Weight', catcol='Gender'):
fig, ax = plt.subplots()
categories = np.unique(df[catcol])
colors = np.linspace(0, 1, len(categories))
colordict = dict(zip(categories, colors))
df['Color'] = df[catcol].apply(lambda x: colordict[x])
ax.scatter(df[xcol], df[ycol], c=df.Color)
return fig
इस फ़ंक्शन को कॉल करके, आप निर्दिष्ट श्रेणी कॉलम द्वारा रंगीन एक स्कैटर प्लॉट उत्पन्न कर सकते हैं:
df = pd.DataFrame({'Height': np.random.normal(size=10),
'Weight': np.random.normal(size=10),
'Gender': ["Male", "Male", "Unknown", "Male", "Male",
"Female", "Did not respond", "Unknown", "Female", "Female"]})
fig = dfScatter(df)
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3