"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > मैं बेहतर विज़ुअलाइज़ेशन के लिए मैटप्लोटलिब में लाइनों को कैसे सुचारू कर सकता हूँ?

मैं बेहतर विज़ुअलाइज़ेशन के लिए मैटप्लोटलिब में लाइनों को कैसे सुचारू कर सकता हूँ?

2024-11-10 को प्रकाशित
ब्राउज़ करें:388

How can I smooth lines in Matplotlib for better visualization?

Matplotlib में स्मूथिंग लाइन्स

Matplotlib में, प्लॉट आमतौर पर डेटा बिंदुओं को सीधी रेखाओं से जोड़ते हैं। हालाँकि यह कुछ परिदृश्यों में स्वीकार्य हो सकता है, परिणामी ग्राफ़ टेढ़ा-मेढ़ा या दृष्टिगत रूप से अरुचिकर दिखाई दे सकता है। इस समस्या को लाइनों को सुचारू करके संबोधित किया जा सकता है, जिसके परिणामस्वरूप अधिक परिष्कृत और सूचनात्मक विज़ुअलाइज़ेशन हो सकता है। scipy.interpolate.spline को लागू करके, आप एक इंटरपोलेशन फ़ंक्शन उत्पन्न कर सकते हैं जो एक सहज वक्र उत्पन्न करेगा जो मूल डेटा बिंदुओं से होकर गुजरता है।

scipy.interpolate आयात स्पलाइन से टी = एनपी.सरणी([6, 7, 8, 9, 10, 11, 12]) पावर = एनपी.अरे ([1.53ई 03, 5.92ई 02, 2.04ई 02, 7.24ई 01, 2.72ई 01, 1.10ई 01, 4.70ई 00]) xnew = np.linspace(T.min(), T.max(), 300) # स्मूथिंग के लिए अंकों की संख्या परिभाषित करें पावर_स्मूथ = तख़्ता (टी, पावर, एक्सन्यू) plt.plot(xnew, power_smooth)

SciPy संस्करण 0.19.0 और बाद के संस्करण में, स्प्लाइन को अप्रचलित कर दिया गया है और BSpline वर्ग द्वारा प्रतिस्थापित कर दिया गया है। समान परिणाम प्राप्त करने के लिए, आप निम्नलिखित कोड का उपयोग कर सकते हैं:
from scipy.interpolate import spline

T = np.array([6, 7, 8, 9, 10, 11, 12])
power = np.array([1.53E 03, 5.92E 02, 2.04E 02, 7.24E 01, 2.72E 01, 1.10E 01, 4.70E 00])

xnew = np.linspace(T.min(), T.max(), 300)  # Define the number of points for smoothing

power_smooth = spline(T, power, xnew)

plt.plot(xnew, power_smooth)
scipy.interpolate आयात make_interp_spline, BSpline से spl = make_interp_spline(T, पॉवर, k=3) # k=3 क्यूबिक स्पलाइन इंटरपोलेशन को इंगित करता है पावर_स्मूथ = स्प्ल(xnew) plt.plot(xnew, power_smooth)

स्मूथिंग इफेक्ट्स की कल्पना
from scipy.interpolate import make_interp_spline, BSpline

spl = make_interp_spline(T, power, k=3)  # k=3 indicates cubic spline interpolation
power_smooth = spl(xnew)

plt.plot(xnew, power_smooth)

[पहले](https://i.sstatic.net/dSLtt.png)

[बाद में](https://i.sstatic.net/olGAh.png)

जैसा कि छवियों से स्पष्ट है, रेखाओं को चिकना करने से टेढ़ा-मेढ़ापन दूर हो जाता है, जिसके परिणामस्वरूप अधिक आकर्षक और जानकारीपूर्ण ग्राफ बनता है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3