Gnuplot で X 座標が時刻のグラフに矢印や文字を描画してみました。グラフの X 座標が時刻なので矢印や文字も X 座標は時刻で指定しますが、項目によっては相対座標を数値で指定することもできました。
環境
- Ubuntu 14.04 (Trusty Tahr) Server
- Gnuplot 4.6 patchlevel 4
グラフに矢印を描画
以下のような Gnuplot コマンドファイル arrow.plt を用意します。
# 日時データグラフを描画するための各種設定
set terminal png size 640,240
set xdata time
set format x "%m/%d\n%H:%M"
set timefmt '%Y-%m-%d %H:%M:%S'
set xrange ['2015-05-13 23:00:00':'2015-05-14 01:00:00']
set yrange [100:300]
set xtics 900
# 矢印のスタイル 1の設定
# style arrow 1:
# 矢印スタイル番号 1
# size character 1.2, 20:
# アローヘッドの大きさは文字(character)の大きさの 1.2倍
# 角度は 20度
# filled:
# アローヘッドを塗りつぶし
set style arrow 1 size character 1.2, 20 filled linewidth 2
# 矢印 1を描画
# X 座標を時刻で指定しています。
# arrowstyle 1:
# 上で設定したスタイル番号 1を指定
set arrow 1 \
from '2015-05-13 23:10:00',150 \
to '2015-05-14 00:45:00',250 \
arrowstyle 1
# 矢印のスタイル 2の設定
# empty:
# アローヘッドを塗りつぶさない
# linecolor rgbcolor 'red':
# 色は赤色
set style arrow 2 size character 3.2, 15 empty linewidth 4 linecolor rgbcolor 'red'
# 矢印 2 を描画
# rto 1800,100:
# 終点を始点からの相対座標で指定しています。
# 日時座標の場合は秒数で指定するようです。
set arrow 2 \
from '2015-05-13 23:15:00',120 \
rto 1800,100 \
arrowstyle 2
#データが空のグラフを書いてます。
plot '-' using 1:3
end
グラフ画像ファイルを作成
$ gnuplot arrow.plt > arrow.png
"arrow.plt", line 47: warning: Skipping data file with no valid points
- グラフデータが無く空グラフなのでワーニングが出ますが無視してください。
以下のグラフ画像ファイルができました。
グラフに文字を描画
以下のような Gnuplot コマンドファイル character.plt を用意します。
# 日時データグラフを描画するための各種設定
set terminal png size 640,240
set xdata time
set format x "%m/%d\n%H:%M"
set timefmt '%Y-%m-%d %H:%M:%S'
set xrange ['2015-05-13 23:00:00':'2015-05-14 01:00:00']
set yrange [100:300]
set xtics 900
set label 1 center at first '2015-05-13 23:15:10', 250 'Hello'
#データが空のグラフを書いてます。
plot '-' using 1:3
end
グラフ画像ファイルを作成
$ gnuplot character.plt > character.png
"character.plt", line 14: warning: Skipping data file with no valid points
以下のグラフ画像ファイルができました。
0 件のコメント:
コメントを投稿