2012-07-05 8 views
7

मेरे पास बड़ी संख्या में फाइलें हैं जिन्हें मुझे हिस्टोग्राम बनाने की आवश्यकता है इसलिए मैं इसे कमांड लाइन से सहेजना चाहता हूं। भूखंडों के लिए मैं आम तौर पर निम्न आदेश का उपयोग कर matlab में सहेजें:मैटलैब में मैं कमांड लाइन से हिस्टोग्राम कैसे सहेज सकता हूं?

figure = plot (x,y) 
saveas(figure, output, 'jpg') 

मैं हिस्टोग्राम के लिए भी ऐसा ही करना चाहते हैं:

figure = hist(x) 
saveas(figure, output, 'jpg') 

हालांकि मैं एक त्रुटि है कि गलत संभाल कहते हैं मिलता है। मैंने imwrite फ़ंक्शन का भी प्रयास किया, कोड निष्पादित करता है लेकिन एक खाली काला छवि सहेजता है। क्या कोई ऐसा तरीका है जिसमें मैं अपने हिस्टोग्राम को सहेज सकूं?

+0

प्रिंट कमांड का उपयोग करते समय यह भी होता है: प्रिंट (आकृति, आउटपुट, '- डीजेपीईजी')? – nicholas

उत्तर

13

जब आप आउटपुट तर्क के साथ hist का उपयोग करते हैं, तो यह प्रत्येक बिन के लिए गिनती देता है, न कि किसी अन्य प्रकार के प्लॉट्स जैसे हैंडल ऑब्जेक्ट का उपयोग करता है।

इसके बजाय, एक आंकड़ा के लिए एक संभाल हड़पने कोई उत्पादन आर्ग के साथ hist का उपयोग आंकड़ा में प्लॉट करने के लिए है, तो आंकड़ा बचाने के।

fh = figure; 
hist(x); 
saveas(fh, output, 'jpg') 
close(fh) 
1

MATLAB file exchange से export_fig स्वचालित रूप से आप के लिए यह संभालती है, और साथ ही अन्य अच्छा विशेषताएं है। इसका उपयोग करने के उदाहरण के लिए मेरा here का एक और उत्तर देखें।

0
fh = figure; 
imhist(x); 
saveas(fh, 'output', 'jpg'); 
+2

क्या आप कृपया बता सकते हैं कि यह कोड कैसे काम करता है? –

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