こんてんつ
自分用のサンプルスクリプトを紹介する。load
を使うことによって可能な限りすっきりさせた。
データと結果イメージ
インプットデータ
# datafile.dat 0 392 322 453 530 660 100 254 407 506 528 723 200 337 463 403 661 760 300 269 399 462 611 780 400 327 312 501 613 660 500 287 474 514 646 778 600 379 371 478 640 602 700 327 445 451 646 608 800 205 326 583 616 706 900 339 394 414 603 684 1000 371 311 470 525 627
結果グラフ画像
スクリプト
メイン
load 'C:\Users\norun\Desktop\gnu\pre\subst_underline.txt' load 'C:\Users\norun\Desktop\gnu\pre\config_letter_style.txt' load 'C:\Users\norun\Desktop\gnu\pre\set_style_line_1.txt' ##### 軸、凡例設定 ##### set key left top set key Left set key reverse #set key invert #set key spacing 0.7 #set grid set xlabel "x-label" set ylabel "y-label" #set xrange[0:1000] #set yrange[0:1000] #set xtics 200 #set ytics 200 #load 'C:/Users/norun/Desktop/gnu/pre/config_y2_letter_style.txt' #set y2label "y2-label" rotate by 270 #set y2range[0:500] #set y2tics 100 ##### 出力設定とサイズ ##### set size ratio 1 1 set terminal png size 1920,1920 ##### 結果出力、プロット ##### INPUT_DATA_DIREC = "C:/Users/norun/Desktop/gnu/format" OUTPUT_DIREC_PATH = "C:/Users/norun/Desktop" cd INPUT_DATA_DIREC INPUT_DATA_NAME = "datafile.dat" GRAPH_NAME = "name_name" set output sprintf('%s/%s.png',OUTPUT_DIREC_PATH,GRAPH_NAME) set title strsubst(GRAPH_NAME, "_", "\\_") plot INPUT_DATA_NAME using 1:2 w lines ls 1 title "No1",\ INPUT_DATA_NAME using 1:2 w points pt 2 lw 5 lc "black" notitle,\ INPUT_DATA_NAME using 1:3 w lines ls 2 title "No2",\ INPUT_DATA_NAME using 1:3 w points pt 2 lw 5 lc "black" notitle,\ INPUT_DATA_NAME using 1:4 w lines ls 3 title "No3",\ INPUT_DATA_NAME using 1:4 w points pt 2 lw 5 lc "black" notitle set output reset
プリアンブル
# subst_underline.txt substr_str_before(str, target)=substr(str, 1, strstrt(str,target)-1) substr_str_after(str, target)=\ substr(str, strstrt(str,target)+strlen(target), strlen(str)) substr_after(str, index) = substr(str, index, strlen(str)) substr_before(str, index) = substr(str, 1, index) strsubst_sub(str, index, target, subst)=\ strstrt(substr_after(str,index),target)==0 ? str :\ strsubst_sub( substr_before(str, index-1) . substr_str_before(substr_after(str,index),target) . \ subst . substr_str_after(substr_after(str,index),target),\ index+strstrt(substr_after(str,index),target)+strlen(subst)-strlen(target),\ target, subst) strsubst(str, target, subst)=strsubst_sub(str,1,target,subst)
# config_letter_style.txt set xlabel font "Arial,60" set ylabel font "Arial,60" set title font "Arial,60" set xtics font "Arial,60" set ytics font "Arial,60" set key font"Arial,40" set xtics offset -1.0,-3.5 set xlabel offset 0.0,-6.5 set ytics offset -1.0,-1.3 set ylabel offset -15.0, 0.0 set title offset -0.0,-0.0 set lmargin 32 set rmargin 32 set tmargin 10 set bmargin 10 set border lw 6
# set_color_style_1.txt set style line 1 lw 8.0 ps 5.0 lc rgb "#FF4B00" set style line 2 lw 8.0 ps 5.0 lc rgb "#005AFF" set style line 3 lw 8.0 ps 5.0 lc rgb "#03AF7A" set style line 4 lw 8.0 ps 5.0 lc rgb "#4DC4FF" set style line 5 lw 8.0 ps 5.0 lc rgb "#F6AA00" set style line 6 lw 8.0 ps 5.0 lc rgb "#FFF100" set style line 7 lw 8.0 ps 5.0 lc rgb "#990099" set style line 8 lw 8.0 ps 5.0 lc rgb "#000000" set style increment user
# config_y2_letter_style.txt set y2label font "Arial,60" set y2tics font "Arial,60" set y2tics offset 0.0,-1.3 set y2label offset 15.0, 0.0
解説
プロットのスタイル
set_color_style_1.txt
では、太さlw
、ポイントのサイズps
、色lc rgb
まで指定した。- 線を描くには、
w lines ls 1
などとすれば良い。 - ポイントを描くには、
w points pt 2 lw 5 lc "black"
の様に、ポイントタイプと太さを指定してあげると良い。
サイズ変更
縦横比を1:1以外にする場合は下記を参考に。
縦0.75:横1.00
set size ratio 0.75 1 set terminal png size 1920,1440
縦0.50:横1.00
set size ratio 0.5 1 set terminal png size 1920,1080