एक बार में सभी खुले Matplotlib फिगर्स को एक फ़ाइल में सेव करने के लिए, हम निम्नलिखित चरण अपना सकते हैं -
- फिगर का आकार सेट करें और सबप्लॉट्स के बीच और आसपास पैडिंग समायोजित करें।
- figure() मेथड का उपयोग करके नया फिगर (fig1) बनाएं या मौजूदा को सक्रिय करें।
- plot() मेथड का उपयोग करके पहली लाइन प्लॉट करें।
- figure() मेथड का उपयोग करके नया फिगर (fig2) बनाएं या मौजूदा को सक्रिय करें।
- plot() मेथड का उपयोग करके दूसरी लाइन प्लॉट करें।
- एक वेरिएबल, filename, इनिशियलाइज़ करें ताकि PDF फ़ाइल बनाई जा सके।
- एक यूजर-डिफाइंड फंक्शन, save_multi_image, बनाएं और इसे कॉल करें ताकि सभी खुले Matplotlib फिगर्स एक बार में एक फ़ाइल में सेव हो जाएं। नया PdfPages ऑब्जेक्ट, pp बनाएं।
- खुले फिगर्स की संख्या प्राप्त करें।
- खुले फिगर्स पर पुनरावृति करें और उन्हें फ़ाइल में सेव करें।
- फिगर प्रदर्शित करने के लिए show() मेथड का उपयोग करें।
उदाहरण
from matplotlib import pyplot as plt
from matplotlib.backends.backend_pdf import PdfPages
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
fig1 = plt.figure()
plt.plot([2, 1, 7, 1, 2], color='red', lw=5)
fig2 = plt.figure()
plt.plot([3, 5, 1, 5, 3], color='green', lw=5)
def save_multi_image(filename):
pp = PdfPages(filename)
fig_nums = plt.get_fignums()
figs = [plt.figure(n) for n in fig_nums]
for fig in figs:
fig.savefig(pp, format='pdf')
pp.close()
filename = "multi.pdf"
save_multi_image(filename)
आउटपुट
जब हम कोड निष्पादित करते हैं, तो यह निम्नलिखित दो प्लॉट्स को प्रोजेक्ट डायरेक्टरी में PDF फ़ाइल (multi.pdf) के रूप में सेव करेगा।

