[Python에 의한 과학·기술 계산] 2차원 데이터를 에러 바 첨부로 플롯, 시각화, matplotlib

matplotlib.pyplot의 errorbar 메소드를 사용하여 2 차원 XY 데이터를 에러 막대 (오차 막대)를 붙여 그립니다.
예를 들어, x 값에 5%, y 값에 20%의 에러 바를 붙였다.

import numpy as np
import matplotlib.pyplot as plt 


x_list=[] # x_listを定義 (空のリストを作成)
y_list=[] # y_listを定義 

f=open('tst_XY.dat','rt') # tst_XY.datという名のファイルをr(読み込み) t(テキスト)モードで読み込む

## 以下, データを読み込み,x_listとy_listに値を格納していく
for line in f:
    data = line[:-1].split(' ')
    x_list.append(float(data[0]))
    y_list.append(float(data[1]))
##


plt.plot(x_list, y_list,'o',color='red') # 生データのプロット

plt.xlabel('X-axis',fontsize=18) # x軸のラベル
plt.ylabel('Y-axis',fontsize=18) # y軸のラベル


# その他,描画用オプション

plt.xticks(np.arange(0,901,300),fontsize=18)

plt.yticks(np.arange(40,180,30),fontsize=18)
plt.grid(True)

# エラーバーをつける
yerr_list=[]
error_y=20   # error (%): y値に20%のエラーをつける
error_x=5   # error (%): x値に5%のエラーをつける
for i in range(len(x_list)):
    yerr_list=(error_y/100.0)*y_list[i]  # y値に20% errorをつけたものをyerr_listに格納
    xerr_list=(error_x/100.0)*x_list[i]  # x値に5% errorをつけるxerr_listに格納

plt.errorbar(x_list,y_list,xerr=xerr_list, yerr=yerr_list,fmt='ro',ecolor='blue',capsize=4.0) #エラーバーを図示

plt.show()   


결과





예제에서 사용한 "tst_XY.dat" 파일 내용


0.0 164.26
54.2 137.98
106.2 124.84
142.3 118.27
187.5 111.70
317.1 98.56
530.4 85.42
688.8 78.84
900.7 72.27

좋은 웹페이지 즐겨찾기