8

.csv ファイルと空白で区切られたファイルからデータをプロットする必要があります。両方のデータ セットが同じプロットに表示される必要があります。

data1.dat

 #t   y
  1   1
  2   1
  3   1

data2.csv

 #t,y
  1,2
  2,2
  3,2

通常、両方が .csv セットの場合、次のようにします。

 set datafile separator ','
 plot 'data1.csv' using 1:2,'data2.csv' using 1:2

プロットステートメントに区切り文字の設定を含める方法はありますか?

plot 'data1.dat' using 1:2,'data2.csv' using datafile separator ',' using 1:2

上記は機能せず、上記のコードのさまざまなバリエーションを試しました....運がありませんでした。

4

2 に答える 2

3

私の知る限り、セパレータを指定する方法はありません。awkただし、POSIX 準拠の環境 (および gnuplot がパイプをサポートしている場合 - ほとんどの場合) では、非常に簡単に作業を行うことができます。

plot 'data1.dat' using 1:2,\
     "<awk -F, '{print $1,$2}' data2.csv" using 1:2
于 2013-01-10T19:58:56.433 に答える
3

set datafile separatorあなたの場合、に複数の文字を与えることができます", "。これらはすべてセパレータとして個別に扱われます。

データファイルのフォーマットが非常に難しい場合: gnuplotsusing指定子は libCscanf()フォーマット文字列を受け入れます

plot "-" us 1:2 "%lf,%lf"
1,2
2,3
3,4
e

コマンドでファイルごとに異なるフォーマット文字列を指定できますplot。gnuplot は、入力として「double」fp 番号のみを受け入れるため、%leor%lf指定子を使用する必要があることに注意してください。

を確認help using examplesしてください。ここにフォーマットの完全な説明があります。

于 2015-08-24T16:28:42.093 に答える