科学の箱

科学・IT・登山の話題

Python

errorbarで誤差棒付きグラフの作成

投稿日:

概要

学習モデルのグラフは誤差を含んでいる。今2軸(xおよびy)をとり、以下のようなモデルに近似したとする。実際のデータは誤差がある。この誤差を表示できるのがerrorbarである。

ドキュメント

https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.pyplot.errorbar.html

matplotlib.pyplot.errorbar(x, y, yerr=None, xerr=None, fmt=”, ecolor=None, elinewidth=None, capsize=None, barsabove=False, lolims=False, uplims=False, xlolims=False, xuplims=False, errorevery=1, capthick=None, *, data=None, **kwargs)
x, y プロットするデータ。これは通常のグラフを描画する際のデータと同じである。
yerr, xerr yおよびxに対する誤差
ecolor 誤差棒の色
elinewidth 誤差棒のサイズ

 

誤差の表示 ( yerr, xerr )

誤差をy軸方向に表示するのがyerr, x軸方向がxerrとなる。ここには誤差の大きさをリストで指定する。リストの長さはプロットするデータと同じ、つまりx, yと同じ長さになる。

下記ではy軸方向が0.3、x軸方向が0.5のリストである。

import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline

x = np.linspace(0,10,10);
y = np.sin(x/2);
yerr = 0.3 * np.ones(len(y));
xerr = 0.5 * np.ones(len(y));
e = plt.errorbar(x,y,yerr=err, xerr=err)

 

 

 

 

誤差棒のスタイル ( ecolor, elinewidth )

ecolorで誤差棒の色、elinewidthで誤差棒の太さを指定する。

下記の例では色はred, 太さは0.5を指定している。

import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline

x = np.linspace(0,10,10);
y = np.sin(x/2);
yerr = 0.3 * np.ones(len(y));
xerr = 0.5 * np.ones(len(y));
e = plt.errorbar(x,y,yerr=err, xerr=err, ecolor="red", elinewidth=0.5)

 

メタ情報

inarticle



メタ情報

inarticle



-Python
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

RoboBrowserで提供しているメソッドget_linksにおけるパラメータの指定方法

get_linksは便利だが文字列を指定する際に少々手間取った。 結論から言うと文字列で指定する方法とre.compileオブジェクトを指定する方法の2つがある。 まず一つ目は単純な文字列。exact …

no image

pyplotでx軸のラベルを90度回転させる

pyplotでx軸にラベルを記載するとラベル文字数が長すぎるためにお互いにオーバーラップしてみにくい。 このよう場合にはpyplot.xticksを実行する際にrotationを指定すればよい。 Ro …

no image

生成した配列をグラフで確認

生成した配列を可視化するためにはmatplotlibが利用できる。 ここでは簡単に可視化するための使い方を見てみる。 まずはnumpyとmatplolibモジュールを読み込む。以下ではnumpyはnp …

no image

seabornで線形解析を実施する

seabornを使えば線形解析も簡単に実行できる。   import seaborn as sns tips = sns.load_dataset(‘tips’) sns.lmplot(x= …

no image

空の配列を生成

numpy.empty()を使うと要素が初期化されていない配列を生成できる。要素に入る値はその時により変わるので必ず初期化後には明示的に値を設定する必要がある。 numpy.empty print(n …

2019年10月
« 9月   11月 »
 123456
78910111213
14151617181920
21222324252627
28293031  

side bar top



アーカイブ

カテゴリー