2012-07-18 7 views

Odpowiedz

14

nie ma sposobu, aby wykreślić współrzędna x od jednego pliku, a współrzędna y od drugiego natywnie w gnuplot.

Jeśli używasz powłoki bash-like, można użyć polecenia

paste x_data.dat y_data.dat > xy_data.dat 

połączyć pliki wiersz po wierszu. Jeśli chcesz umieścić to polecenie w skrypcie gnuplot można zrobić tak:

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

dzięki za pomoc – sangi

4

Jest łatwiejszy sposób, aby robić to, co pytasz, bezpośrednio z gnuplot. Wypróbuj:

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

Jeśli oba pliki zawierają tylko jedną kolumnę, powyższe polecenie wydrukuje je jeden na drugim.

Komenda join jest również przydatna do wykonywania operacji arytmetycznych dotyczących kolumn z różnych plików; Na przykład, jeśli oba pliki mają dwie kolumny, a następnie

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

będzie wykreślić pierwszą kolumnę pierwszego pliku w stosunku do sumy pomiędzy drugą kolumnę pierwszego i drugiego pliku.

Komenda join jest częścią GNU core utilities. Mój Mac ma je domyślnie zainstalowane; Sądzę, że tak jest w przypadku większości systemów Linux. Jeśli korzystasz z systemu Windows, spójrz na numer GnuWin.

Źródło: lista dyskusyjna gnuplot (http://gnuplot.10905.n7.nabble.com/combining-data-from-different-input-files-td3528.html).

Powiązane problemy