シェルスクリプトの for ループと同様の機能をgnuplotでも使うことができる.
gnuplot> set datafile separator ',' gnuplot> plot for [i=2014:2018] '/home/atmos/ipesc/sample/amedas/Okayama_Okayama_'.i.'.csv' using 0:2
変数 i に 2014 から 2018 までの数字を順番に入れて,どんどん重ね描きする. 変数をファイル名に埋め込むところでは,変数を「.」で囲んでいる(gnuplotではこうすることになっている).
ループで複数の行をまわすこともできる. for の前に do をつけて,繰り返し部分を { と } で囲む.
gnuplot> do for [i=2014:2018] { more> set term pngcairo more> set output sprintf("dailymean%d.png",i) more> set datafile separator ',' more> set xdata time more> set timefmt "%m/%d" more> plot '/home/atmos/ipesc/sample/amedas/Okayama_Okayama_'.i.'.csv' using 1:2 more> } gnuplot>
ちゃんと動作したら,dailymean2014.png から dailymean2018.png の5つのファイルが生成したはず.