सबसे पहले, यदि आप उपयोग कर रहे हैं, तो ध्यान savefig
रखें कि जब तक आप अन्यथा निर्दिष्ट नहीं करते हैं, तब बचत करते समय यह आंकड़ा की पृष्ठभूमि रंग को ओवरराइड करेगा fig.savefig('blah.png', transparent=True)
।
हालांकि, अक्षों को हटाने और ऑन-स्क्रीन की पृष्ठभूमि को देखने के लिए, आपको दोनों को सेट करने ax.patch
और fig.patch
अदृश्य होने की आवश्यकता होगी ।
उदाहरण के लिए
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot(range(10))
for item in [fig, ax]:
item.patch.set_visible(False)
with open('test.png', 'w') as outfile:
fig.canvas.print_png(outfile)
(बेशक, आप एसओ की सफेद पृष्ठभूमि पर अंतर नहीं बता सकते, लेकिन सब कुछ पारदर्शी है ...)
यदि आप लाइन के अलावा कुछ और नहीं दिखाना चाहते हैं, तो अक्ष को बंद करने के साथ-साथ उपयोग भी करें ax.axis('off')
:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot(range(10))
fig.patch.set_visible(False)
ax.axis('off')
with open('test.png', 'w') as outfile:
fig.canvas.print_png(outfile)
उस मामले में, हालांकि, आप कुल्हाड़ियों को पूरा आंकड़ा लेने के लिए तैयार कर सकते हैं। यदि आप कुल्हाड़ियों के स्थान को मैन्युअल रूप से निर्दिष्ट करते हैं, तो आप इसे पूरा आंकड़ा लेने के लिए कह सकते हैं (वैकल्पिक रूप से, आप उपयोग कर सकते हैं subplots_adjust
, लेकिन यह एकल कुल्हाड़ियों के मामले के लिए सरल है)।
import matplotlib.pyplot as plt
fig = plt.figure(frameon=False)
ax = fig.add_axes([0, 0, 1, 1])
ax.axis('off')
ax.plot(range(10))
with open('test.png', 'w') as outfile:
fig.canvas.print_png(outfile)
savefig
? (यदि ऐसा है, तो यह आंकड़ा सहेजते समय आपके द्वारा निर्धारित किए गए कुछ को ओवरराइड करता है।) क्या मैन्युअल रूप सेfig.patch.set_visible(False)
काम करना निर्धारित करता है?