मैटप्लॉटलिब विज़ुअलाइज़ेशन बनाने के लिए एक शक्तिशाली पायथन लाइब्रेरी है। प्लॉट्स को इमेज फाइलों के रूप में सेव करना एक सामान्य कार्य है, लेकिन सेव करने से पहले प्लॉट को डिस्प्ले करने का डिफ़ॉल्ट व्यवहार अकुशल हो सकता है। यह लेख दर्शाता है कि इंटरमीडिएट डिस्प्ले स्टेप के बिना मैटप्लॉटलिब प्लॉट्स को कुशलतापूर्वक इमेज फाइलों में सीधे कैसे सेव किया जाए।
विषयवस्तु की तालिका
- प्लॉट्स को सेव करने के लिए
savefig()
का उपयोग करना - इमेज एरे को सेव करने के लिए
imsave()
का उपयोग करना
प्लॉट्स को सेव करने के लिए savefig()
का उपयोग करना
savefig()
मेथड मैटप्लॉटलिब प्लॉट्स को सेव करने का सबसे बहुमुखी विकल्प है। यह फ़ाइल प्रारूप, रिज़ॉल्यूशन और फ़िगर आकार पर नियंत्रण प्रदान करता है। प्लॉट को प्रदर्शित करने से बचने के लिए, किसी भी ऐसे कमांड से पहले savefig()
को कॉल करें जो प्लॉट को दिखाएगा (जैसे plt.show()
)। मेमोरी को रिलीज़ करने के लिए, खासकर जब कई प्लॉट के साथ काम कर रहे हों, plt.close()
का उपयोग करके फ़िगर को बंद करना याद रखें।
import matplotlib.pyplot as plt
import numpy as np
# नमूना डेटा
x = np.linspace(0, 10, 100)
y = np.sin(x)
# प्लॉट बनाएँ
plt.plot(x, y)
plt.xlabel("X-अक्ष")
plt.ylabel("Y-अक्ष")
plt.title("साइन वेव")
# प्लॉट को प्रदर्शित किए बिना फ़िगर को सेव करें
plt.savefig("sine_wave.png", dpi=300, bbox_inches='tight') # dpi रिज़ॉल्यूशन को नियंत्रित करता है, bbox_inches सुनिश्चित करता है कि सभी तत्व शामिल हैं
plt.close()
यह कोड प्लॉट को 300 DPI पर sine_wave.png
के रूप में सेव करता है। bbox_inches='tight'
तर्क सुनिश्चित करता है कि लेबल और शीर्षक सहित संपूर्ण प्लॉट, सहेजी गई इमेज में कैप्चर हो जाए। आप फ़ाइल प्रारूप (जैसे, “.pdf”, “.svg”, “.jpg”) को आसानी से बदल सकते हैं। समर्थित प्रारूपों की पूरी सूची के लिए मैटप्लॉटलिब दस्तावेज़ देखें।
इमेज एरे को सेव करने के लिए imsave()
का उपयोग करना
इमेज एरे को सीधे सेव करने के लिए, imsave()
एक अधिक संक्षिप्त दृष्टिकोण प्रदान करता है। यदि आप पहले ही इमेज डेटा को NumPy एरे के रूप में जेनरेट कर चुके हैं, तो यह विशेष रूप से उपयोगी है, जिससे मैटप्लॉटलिब फ़िगर ऑब्जेक्ट बनाने की आवश्यकता समाप्त हो जाती है।
import matplotlib.pyplot as plt
import numpy as np
# एक नमूना इमेज एरे (ग्रेस्केल) बनाएँ
image_array = np.random.rand(256, 256)
# इमेज एरे को एक फ़ाइल में सेव करें
plt.imsave("random_image.png", image_array, cmap='gray')
यह कोड 256×256 ग्रेस्केल इमेज बनाता है और सेव करता है। cmap
तर्क कलरमैप निर्दिष्ट करता है; यहाँ ‘ग्रे’ का उपयोग किया गया है। अन्य कलरमैप उपलब्ध हैं। imsave()
कुशल है क्योंकि यह फ़िगर हैंडलिंग को बायपास करता है।
संक्षेप में, savefig()
और imsave()
दोनों मैटप्लॉटलिब आउटपुट को प्रदर्शित किए बिना सेव करने के कुशल तरीके प्रदान करते हैं। सबसे अच्छा विकल्प इस बात पर निर्भर करता है कि आप एक पूर्ण फ़िगर या एक कच्चे इमेज एरे के साथ काम कर रहे हैं। plt.show()
से पहले savefig()
को प्राथमिकता देना और plt.close()
का उपयोग करना दक्षता को बढ़ाता है, खासकर जब कई इमेज उत्पन्न कर रहे हों।