つれづれなる備忘録

日々の発見をあるがままに綴る

gnuplotによるグラフ作成9~エラーバーの追加

 今回は前回紹介したデータを読み込んでプロットする方法に加えてエラーバーを追加する方法について紹介する。

atatat.hatenablog.com

1. エラーバーの追加

 データプロットにエラーバーを追加する方法について示す。まず、データの書式は例えばdataErY.txtの中身は以下のようなものになる。

#X Y ErY1 ErY2
0 1 0.5 1.3
2 5 4 6
6 8 6 10 
8 15 14 16
10 22 15 26
15 50 30 70

データ書式としてはX, Y, につづいてエラーバーを表示するためにYの誤差含む最小値、Yの誤差含む最大値となる。Yのエラーバーを追加するにはplot ファイル名 with yerrorbarsとする。(errorbarsでもよい) 上記のdataErYをプロットするには

plot 'dataErY.txt' with yerrorbars

実行結果は以下のようになる。

データプロットにエラーバー追加
データプロットにエラーバー追加

Y方向ではなくX方向のエラーバーを追加するには、yerrorbarsの代わりにxerrobarsを用いる。例えばdataErX.txtの中身は

#X Y ErX1 ErX2
0 1 0 0.3
2 5 1.8 2.2
6 8 5.8 6.5
8 15 7.5 8.5
10 22 9.5 10.5
15 50 14 16

dataErX.txtdataErY.txtと同様にX, Y, につづいてエラーバーを表示するためにXの誤差含む最小値、Xの誤差含む最大値という書式になっている。

plot 'dataErY.txt' with xerrorbars

以下のようにX方向のエラーバーが追加される。

データプロットにXエラーバーを追加
データプロットにXエラーバーを追加

2. XY方向にエラーバーを追加

次にXY双方に誤差を含むエラーバーを追加する場合については、データファイルdataErXY.txtの書式は以下のようにする

#X Y ErX1 ErX2 ErY1 ErY2
0 1 0 0.3 0.5 1.3
2 5 1.8 2.2 4 6
6 8 5.8 5.5 6 10 
8 15 7.5 8.5 14 16
10 22 9.5 10.5 15 26
15 50 14 16 30 70

データ書式としてはX, Y, につづいてエラーバーを表示するためにXの誤差含む最小値、Xの誤差含む最大値,、Yの誤差含む最小値、Yの誤差含む最大値となる。 XYのエラーバーを追加するにはplot ファイル名 with xyerrorbarsとする。

plot 'dataErXY.txt with xyerrorbars

実行結果は以下のようになりXY方向のエラーバーが追加されていることがわかる。

データプロットにXYエラーバーを追加
データプロットにXYエラーバーを追加

3. エラーバー追加とスタイル変更

 データプロット時のデフォルトのポイントがクロス+のためXYエラーバーと被ってしまいプロット点が把握しにくい。そこでポイントのスタイルを変更するには(ついでにエラーバーが切れてしまっているので、XYレンジも変更)

set xrange [0:20]
set yrange [0:100]
plot 'dataErXY.txt with xyerrorbars pt 6

データポイントがoになったことでプロット位置が明確になった。

エラーバー追加時にポイント形式変更
エラーバー追加時にポイント形式変更

xyerrorbarsのところboxxyerrobarsとすると、エラーバーの書式がボックスで表記される。

ボックスエラーバー
ボックスエラーバー

4. まとめ

 今回はデータファイルから読み込んだプロットにエラーバーを追加する方法、エラーバーを追加した状態でポイントスタイルを変更する方法について紹介した。