x --- y
0 --- 2
1 --- 2.4
2 --- 3.6のようにフォーマットされた 2 つのファイル
があるとします。これらは y の値が異なります。xごとに、2つのファイル間のyの最大値である単一のグラフをプロットする方法はありますか?
私の自己を十分に説明したかどうかはわかりません。
条件文を試してみましたが、2つの異なるファイルを検索できる式が見つかりませんでした
gnuplot だけでは、2 つ以上のファイルを 1 つのプロットに結合する方法はありません。これを行うには、コマンド ライン ユーティリティなどの外部ツールを使用する必要がありますpaste
。
max(x, y) = (x > y ? x : y)
plot '< paste fileA.txt fileB.txt' using 1:(max($2, $4))
y
値は 2 列目と 4 列目に含まれています。
この次のバージョンでは、python
スクリプトを使用しnumpy
てファイルを連結しますが、他のスクリプト言語でも同様です。
"""paste.py: merge lines of two files."""
import numpy as np
import sys
if (len(sys.argv) < 3):
raise RuntimeError('Need two files')
A = np.loadtxt(sys.argv[1])
B = np.loadtxt(sys.argv[2])
np.savetxt(sys.stdout, np.c_[A, B], delimiter='\t')
プロットするには、次を使用します。
max(x, y) = (x > y ? x : y)
plot '< python paste.py fileA.txt fileB.txt' using 1:(max($2, $4))