【gnuplot】データの一部のみをプロットする

データの最初の数行のみをプロットしたかったり、最初の数行を飛ばしたりしたいときに使えるコマンド。

☆コンテンツ概要

・every ::3(4番目のデータからプロット)
・every ::3::7(4番目から8番目までのデータのプロット)

★データ

"sample1.dat"というデータがあるとする。

"sample1.dat"
#x y
1 12
2 34
3 24
4 39
5 26
6 42
7 9
8 32
9 11
10 25

★通常のプロット結果

plot "sample1.dat" using 1:2 with linespoint lc rgb "blue" pt 2 lw 4.0 notitle

f:id:norunblog:20200903213703p:plain

★every ::3(4番目のデータからプロット)

plot "sample1.dat" every ::3 using 1:2 with linespoint lc rgb "blue" pt 2 lw 4.0 notitle

 f:id:norunblog:20200903213835p:plain

★every ::3::7(4番目から8番目までのデータのプロット)

plot "sample1.dat" every ::3::7 using 1:2 with linespoint lc rgb "blue" pt 2 lw 4.0 notitle

f:id:norunblog:20200903213954p:plain

★解説

詳しくは下記のページを参考にさせて頂きました。
http://heim.ifi.uio.no/inf3330/scripting/doc/gnuplot/Kawano/datafile2.html

〈every 2〉 「1行おきにプロットする」
〈every ::3〉 「最初の3行を飛ばしてプロットする」
〈every ::3::5〉 「4行目から6行目までをプロットする」
〈every ::0::0〉 「最初の行だけをプロットする」
〈every 2::::6〉 「最初の7行を1行おきにプロットする」
〈every :2〉 「1データブロックおきにプロットする」
〈every :::5::8〉 「5から8データブロックをプロットする」

every I:J:K:L:M:N

I 行の増分
J データブロックの増分
K プロット開始行
L プロット開始データブロック
M プロット終了行
N プロット終了データブロック