2013-06-14 18 views
24

में मैं 3 इंच आकार द्वारा 4 की बिल्कुल Fig1 प्राप्त करने के लिए चाहते हैं, और टिफ प्रारूप में नीचे कार्यक्रम को सही:परिवर्तन आंकड़ा आकार और आकृति प्रारूप matplotlib

import matplotlib.pyplot as plt 
list1 = [3,4,5,6,9,12] 
list2 = [8,12,14,15,17,20] 
plt.plot(list1, list2) 
plt.savefig('fig1.png', dpi = 300) 
plt.close() 

किसी भी मदद की?

+0

है .tif में .png से फ़ाइल के नाम में एक्सटेंशन बदल बनाने जोड़कर भूखंड का आकार बदल सकते हैं वास्तविक टिफ छवि? – golay

उत्तर

31

आप आंकड़ा आकार सेट कर सकते, तो आप स्पष्ट रूप से

plt.figure(figsize=(3,4)) 

साथ आंकड़ा बनाने को बदलने के लिए सहेजे गए आंकड़े का प्रारूप बस फ़ाइल नाम में एक्सटेंशन को बदलें। हालांकि मैं नहीं जानता कि matplotlib बैकेंड समर्थन टिफ के किसी भी

+0

क्या फ़ाइल नाम में .png से .tif में एक्सटेंशन को बदल रहा है वास्तविक टिफ छवि बनाएं? – golay

+1

जैसा कि मैंने लिखा था, मुझे नहीं पता, लेकिन दूसरे जवाब पर टिप्पणियों से ऐसा लगता है कि टिफ़ गैर समर्थित है –

14

पहले भाग (उत्पादन आकार explictly की स्थापना) बहुत कठिन नहीं है:

import matplotlib.pyplot as plt 
list1 = [3,4,5,6,9,12] 
list2 = [8,12,14,15,17,20] 
fig = plt.figure(figsize=(4,3)) 
ax = fig.add_subplot(111) 
ax.plot(list1, list2) 
fig.savefig('fig1.png', dpi = 300) 
fig.close() 

लेकिन matplotlib + टिफ पर एक त्वरित गूगल खोज के बाद, मुझे विश्वास है कि matplotlib tiff भूखंडों कर सकते हैं नहीं कर रहा हूँ। GDK backend ऐसा करने में सक्षम होने का कुछ उल्लेख है।

एक विकल्प आउटपुट को इमेजमैजिक के convert जैसे टूल के साथ कनवर्ट करना होगा।

(एक अन्य विकल्प जब तक एक real matplotlib expert पता चलता है और मुझे गलत साबित होता है ;-) यहाँ प्रतीक्षा करने के लिए है

+0

यदि आपके पास [जीडीके बैकएंड] है (http://matplotlib.org/faq/usage_faq.html#what-is-a-backend) स्थापित है तो आप इसे मूल रूप से टिफ खींचने के लिए उपयोग कर सकते हैं। कुछ निर्भरताएं हो सकती हैं जिन्हें आप इंस्टॉल करना चाहते हैं। – GWW

+0

@GWW - मैंने देखा कि उल्लेख किया गया है, लेकिन मैंने यह भी देखा [यह धागा] (http://matplotlib.1069221.n5.nabble.com/16bit-tiff-support-td11448.html) जिसका मतलब है कि झूठ है। बेशक, यह एक पुराना धागा है, इसलिए तब से यह तय किया जा सकता है। – mgilson

+0

मैंने वास्तव में कभी कोशिश नहीं की है, इसलिए यह झूठ हो सकता है। – GWW

6

आप इस

plt.rcParams["figure.figsize"] = [16,9] 
+1

प्लॉट को व्यापक बनाने के लिए मुझे ज्यूपीटर नोटबुक में उपयोग करने की आवश्यकता है। –

+1

जुपीटर नोटबुक में काम करना – ashwinids

+0

आरसीपीराम में अनुकूलन की विशाल शक्ति –

संबंधित मुद्दे