2012-07-18 21 views
12

में मेरे पास दो फाइलें हैं: एक x निर्देशांक वाला, और अन्य वाई के साथ।दो फाइलों से gnuplot प्लॉट डेटा: एक एक्स समन्वय में, अन्य वाई

क्या इन दो फ़ाइलों को gnuplot का उपयोग करके एक ग्राफ में साजिश करने का कोई तरीका है? या क्या इन दो फाइलों को पंक्ति से पंक्तिबद्ध करने का कोई तरीका है?

धन्यवाद

उत्तर

14

वहाँ साजिश x एक फ़ाइल और y से समन्वय gnuplot में एक और मूल रूप से समन्वय के लिए एक रास्ता नहीं है।

यदि आप एक पार्टी की तरह खोल उपयोग करते हैं, आप पंक्ति पंक्ति-दर फ़ाइलें गठबंधन करने के लिए आदेश

paste x_data.dat y_data.dat > xy_data.dat 

उपयोग कर सकते हैं। यदि आप एक gnuplot स्क्रिप्ट में इस आदेश को रखना चाहते हैं, तो आप इस तरह ऐसा कर सकते हैं:

plot "<paste x_data.dat y_data.dat" 
+1

आपकी सहायता के लिए धन्यवाद – sangi

4

आप क्या पूछते हैं, सीधे gnuplot के भीतर से करने के लिए एक आसान तरीका है। इसके साथ प्रयास करें:

plot "< join file1.dat file2.dat" using 1:2 with lines 

यदि दोनों फाइलों में केवल एक कॉलम होता है, तो उपरोक्त आदेश उन्हें एक दूसरे के विरुद्ध प्रिंट करेगा।

join कमांड विभिन्न फ़ाइलों से कॉलम शामिल अंकगणितीय परिचालन करने के लिए भी उपयोगी है; उदाहरण के लिए, यदि दोनों फ़ाइलों को दो कॉलम, तो

plot "< join file1.dat file2.dat" using 1:($2+$4) with lines 

पहली और दूसरी फ़ाइल के दूसरे स्तंभ के बीच राशि के खिलाफ पहले फ़ाइल के पहले स्तंभ साजिश होगा।

join कमांड GNU core utilities का हिस्सा है। मेरे मैक ने उन्हें डिफ़ॉल्ट रूप से स्थापित किया है; मुझे लगता है कि यह ज्यादातर लिनक्स सिस्टम के लिए मामला है। यदि आप विंडोज का उपयोग करते हैं, तो GnuWin पर एक नज़र डालें।

स्रोत: gnuplot मेलिंग सूची (http://gnuplot.10905.n7.nabble.com/combining-data-from-different-input-files-td3528.html)।