Python errorbar函数绘制误差棒图
喜马拉雅的夜空 人气:0Python的matplotlib模块中的errorbar函数可以绘制误差棒图,本次主要绘制不带折线的误差棒图。
1.基本参数
errorbar函数的基本参数主要有:
x,y:主要定于二维数据的横纵坐标值
yerr :定义y轴方向的误差棒的大小,可以是一个数,也可以是二维数组(分别传递平均值与最小值的差和最大值与平均值的差)。
xerr:定义y轴方向的误差棒的大小,同样也可以是一个数,也可以是二维数组。
fmt:定义数据折线和数据点的样式。
ecolor:定义误差棒的颜色。
elinewidth:定义误差棒线的宽度。
capsize:定义误差棒帽的大小(长度)。
capthick:定义误差棒帽的宽度。
alpha:设置透明度(范围:0-1)。
marker:设置数据点的样式(具体字母代表的样式可以参考:matplotlib.marker)。
markersize(简写ms):定义数据点的大小。
markeredgecolor(简写mec):定义数据点的边的颜色,可使用官方提供的缩写字母代表的简单颜色,也可以使用RGB颜色和HTML十六进制#aaaaaa格式的颜色(具体可参考matplotlib.colors)。
markeredgewidth( 简写mew ):定义数据点的边的宽度。
markerfacecolor(简写 mfc):定义数据点的颜色。
linestyle:设置折线的样式,设置成none可将折线隐藏。
label:添加图例。
2.代码实现
#导入函数库 import matplotlib.pylab as plt import numpy as np #绘制误差棒图 plt.figure(1) #将数据导入 #导入最小值、最大值 obs_min,obs_max = np.loadtxt('obs_syn_amp_mean.dat', usecols=(8,9), unpack=True) #导入x以及平均值 x,obs_mean = np.loadtxt('obs_syn_amp_mean.dat', usecols=(1,10), unpack=True) #设置errorbar的大小 yerr = np.zeros([2,len(obs_mean)]) yerr[0,:] = obs_mean - obs_min yerr[1,:] = obs_max - obs_mean #绘制errorbar plt.errorbar(x,obs_mean,yerr=yerr[:,:],ecolor='k',elinewidth=0.5,marker='s',mfc='orange',\ mec='k',mew=1,ms=10,alpha=1,capsize=5,capthick=3,linestyle="none",label="Observation") # 设置坐标轴及图例显示信息 plt.xlabel(r"Distance $(\degree)$", fontsize=15) plt.ylabel(r"Amplitude Ratio", fontsize=15) plt.xticks(fontsize=10) plt.yticks(fontsize=10) plt.legend(fontsize=15) # 将图片保存在当前目录 fig = plt.gcf() fig.set_size_inches(8, 10) fig.savefig('Obs-syn-amp-mean.png', dpi=500) plt.close()
3.结果显示
4.更多参数请参考matplotlib官网
总结
加载全部内容