मैं नियमित रूप से एक एकल फाइल में कई आंकड़े (सैकड़ों) निर्यात करना होगा की तुलना में बहुत धीमी है। वर्तमान में मैंMATLAB आंकड़ा निर्यात आर
print('-dpsc2', outfile, '-append');
मेरा कोड एक एकल छिपे हुए आंकड़े का उपयोग करता है जिसका उपयोग प्रत्येक नए आकृति के लिए फिर से किया जा रहा है।
अब, समस्या यह है कि मैं प्रति सेकंड लगभग 8 आंकड़ों की अधिकतम निर्यात गति प्राप्त कर सकता हूं। आर में, आप प्रति सेकेंड लगभग 200 आंकड़े आसानी से प्लॉट कर सकते हैं। क्या किसी के पास कोई सुझाव है कि MATLAB की निर्यात क्षमताओं को कैसे बढ़ाया जाए?
जनवरी
मुझे संदेह है कि यह * प्रिंटिंग * के कार्य के बजाय यह आंकड़ा और साजिश * पीढ़ी * हो सकता है, यह धीमा है। कम से कम, ऐसा लगता है कि आपने ग्राफ़ को * उत्पन्न * करने के लिए आवश्यक समय से * प्रिंट * करने के लिए आवश्यक समय को अलग करने के लिए काम नहीं किया है। मैं कहता हूं कि क्योंकि मैं देख सकता हूं कि प्रिंट करने के लिए आप अपने कॉल में हैंडल पास नहीं कर रहे हैं (उदाहरण के लिए, ** ** हैंडल ** तर्क http://www.mathworks.com/help/ पर वर्णित है matlab/ref/print.html)। मैं शर्त लगाता हूं कि यदि आप ग्राफ उत्पन्न करने के लिए कोड पोस्ट करते हैं, तो हम आपको थोड़ा तेज़ करने में मदद कर सकते हैं। या, आप MATLAB प्रोफाइलर का उपयोग स्वयं कर सकते हैं। –
@BobGilmore: नहीं बस उपसंहार करने के लिए आंकड़ों का सबसे सरल मुद्रण भी एक तेजी से कंप्यूटर पर के बारे में 0.11 0.13 करने के लिए सेकंड लेता है, कि क्या मैं 'print' या नहीं करने के लिए एक हैंडल में गुजरती हैं। – horchler
धन्यवाद @BobGilmore। असल में, यह वास्तव में निर्यात के बारे में है, पीढ़ी के बारे में नहीं। आप इसे देख सकते हैं यदि आप बार-बार एक ही आंकड़े निर्यात करते हैं: 'आंकड़ा; साजिश (रैंड (10,10)); टिक; मैं के लिए = 1: 100 प्रिंट ('- dpsc2', 'test.ps', '-append'); अंत; toc' मेरी मशीन पर लगभग 10 सेकंड लेता है। – Jan