gnuplot の活用事例です.
作図事例(コマンドプロンプから使う)
3次曲線回帰
x 値 y 値を与え3次曲線に回帰するものです.回帰結果は「fit_test0.log」というテキストファイルに出力されます.
図中に回帰結果を入れてみました.
ローレンツ型曲線回帰
x値とy値を与えローレンツ型曲線に回帰するものです.回帰結果は「fit_test1.log」というテキストファイルに出力されます.
地震加速度応答スペクトル(両対数グラフ)
データファイルは以下の構成です.ここでは1列目の周期と,2列目の加速度応答値の関係をプロットしています.列の選択を明示的に行わない場合,1列目を x 値,2列目を y 値として認識します.
#period(sec) acc(gal) vel(kine) dis(cm)
0.02000 321.005 0.220 0.003
0.02063 320.271 0.225 0.003
0.02128 320.656 0.235 0.004
0.02195 321.100 0.247 0.004
・・・・・
|
フーリエスペクトル比(複数曲線描画)
データファイルは以下の構成です.このようなデータファイルを3組準備し,1列目の振動数と6列目の平滑化フーリエスペクトル比の関係を,重ね書きでプロットしています.
#分子ファイル名 地表EW IWTH250806140843_EW2.csv
#分母ファイル名 地中EW IWTH250806140843_EW1.csv
#出力ファイル名 sp比 outIWTH250806140843_EW.csv
#バンド幅 1
#データ数 16385
#振動数 分子原SP 分母原SP 平滑化分子SP 平滑化分母SP 平滑化SP比
0.000000E+000 4.403831E-003 2.775324E-003 5.757745E+001 3.761458E+001 1.530722E+000
3.051758E-003 5.769488E+001 8.607772E+000 5.758453E+001 3.761848E+001 1.530751E+000
6.103516E-003 3.295185E+001 4.929097E+000 5.760577E+001 3.763021E+001 1.530839E+000
9.155273E-003 3.119506E+001 4.858689E+000 5.764116E+001 3.764973E+001 1.530984E+000
・・・・・
|
地震加速度時刻歴(x軸の演算処理)
データファイルは以下の構成です.サンプリングピッチ 0.01 秒で,30000 点の加速度値が,1列目に与えられています.
#2008/06/14 08:43:00 IWTH25 地中EW Max.acc=747.922
#dt,0.010
#ndata,30000
0.191
0.190
0.191
・・・・・
|
この場合,プロットデータ(加速度値)は1列のみなのでこれを y 値とし, x 値は 0, 1, 2, ・・・のように自動で与えられますが,サンプリングピッチは 0.01 秒なので,x 軸の表示を工夫する必要があります.考え方の例としては以下のものがあります.なおここでは描画時刻を 0〜50 秒( 5000 点のプロット)とすることを考えます.
- (1案)x軸範囲を 0〜5000 とし,x 軸表示を変更してプロットする.
set xrange [0:5000] #x軸の範囲指定
set xtics("0" 0,"10" 1000,"20" 2000,"30" 3000,"40" 4000,"50" 5000) #x軸表示変更
plot "inpACC_EW1.prn" with line linetype 4 notitle
|
- (2案)x 軸範囲をプロットしたい時刻にあわせて 0〜50 とし,plot コマンド内で,x 値(0列)を 0.01 倍してプロットする.
set xrange [0:50] #x軸の範囲指定
plot "inpACC_EW1.prn" using ($0*0.01):1 with line linetype 4 notitle
|
この事例では,プロット時刻を変えても x 軸を書き換える必要が無いため,(2案)の方が効率的となります.
気候プロット(y2軸の使用とbox塗りつぶし)
ある都市の,雨量を左縦軸に,気温を右縦軸にとって気候の月変化をプロットするものです.
replot によるグラフの重ね書き
plot と replot を用いたグラフ重ね書き事例です.
媒介変数を用いた等確率楕円重ね書き( set parametric )
媒介変数を用いて,等確率楕円を重ね書きする事例です.
関数形の確認(log10,exp)
関数の作図事例です.このように関数の形を確認したい場合にも便利に使えます.
雨量グラフ(with filledcurves と with boxes)
前橋市の 100 年間の雨量観測記録を「気象庁のホームページ」からダウンロードし,データファイルを作りました.まず「with filledcurves」のテストとして,1900〜2009 年の年間雨量を月別に分解したものをプロットしました.色はデフォルトです.センスがいいとは思えませんが,年により降水量は倍半分のレベルでばらつくことが解ります.また同一の最近 10 年間( 2000〜2009 年)のデータを,「with boxes」を用いて棒グラフの着色事例としてプロットしてみました.
シャルピー衝撃試験結果プロット(multiplotの活用)
懐かし?のシャルピー衝撃試験結果をプロットするものです.
ここでは,下段に試験温度と吸収エネルギーの関係を,上段に試験温度と脆性破面率の関係を multiplot を用いて配置しました.
方法は,下に示すとおりです.まず,multiplot の宣言をし,横:縦の相対寸法を 1 : 1 とした領域を考え,set size 1.0, 0.65 で横:縦 = 1 : 0.65 とした図を,set origin 0, 0 で左下を原点とするよう描きます.
次に set size 1.0, 0.35 で大きさを横:縦 = 1 : 0.35 とした図を,set origin 0, 0.65 により,左寄せ・相対高さ 0.65 の位置に描くことにより,上下の図の横軸を共通にしています.最後に, unset multiplot しています.reset は念のため.
なお,tanh(ハイパボリック・タンジェント)関数を用いたフィッティングも行ってみました.この例ではうまくいっていますが,大量に処理する場合,収束しなかったり,期待通りの収束値にならない場合もあり,注意が必要です.
set multiplot
#
set size 1.0,0.65
set origin 0,0
(吸収エネルギーの図)
#
set size 1.0,0.35
set origin 0,0.65
(脆性破面率の図)
#
unset multiplot
reset
|
3重応答スペクトル図(両対数グラフ)
データファイルは加速度応答スペクトル図化と同じものです.ここでは1列目の周期と,3列目の速度応答値の関係を両対数軸にプロットし,加速度線と変位線を直線関数により追加しています.軸と軸数値の距離が大きく余り美しいできばえではありませんが,このような図も作成可能ということで.
#period(sec) acc(gal) vel(kine) dis(cm)
0.02000 321.005 0.220 0.003
0.02063 320.271 0.225 0.003
0.02128 320.656 0.235 0.004
0.02195 321.100 0.247 0.004
・・・・・
|