The issue
我用导入的数据绘制了一个圆点图。一组数据显示数据集的不同成员之间的均值时间序列,另一组数据显示这些成员在每个时间步骤中的标准偏差(SD),然后才采取这些方法。我的顾问要我添加“胡须”,显示+/- 1 SD的点代表手段。下面我将提供一个简化的工作示例。
代码(示例)
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
#Generate some data
x = np.empty((7,9))
for i in range(7):
x[i,:] = np.arange(1,10,(1+(i*.02)))
print x
#Find standard devs down each column
std = np.std(x,axis=0)*5
print std
#Get the mean of x data down each column
xmean = np.mean(x,axis=0)
print xmean
#Plot xmean data & x's stan. devs
legendlabels = ['Mean of members','S.D. of members']
time = np.arange(0,9)
fig, ax = plt.subplots(figsize=(11,6))
data1 = ax.scatter(time,xmean,s=70,color='k',marker='^')
data2 = ax.scatter(time,std, s=70,color='k')
ax.legend([data1,data2],legendlabels,loc=2)
ax.grid()
plt.show()
SD乘以5,所以当添加晶须时,实际上是可见的。结果应该是这样的。
问题
如何在表示+/- 1对应的SD (以下圆圈的值)的三角形中添加晶须?考虑到我的实际数据没有显示y方向的范围,我不认为方框图对此最好.
发布于 2016-12-01 21:46:37
您可以使用以下内容添加错误栏:
ax.errorbar(time, xmean, yerr=std)
如果yerr
是大小为time
的一维数组,则在+/- yerr
处绘制相对于数据(xmean
) (api.html#matplotlib.pyplot.errorbar)的错误条:
如果标量数、类len(N)数组对象或类似于Nx1数组的对象,则在+/-值处绘制相对于数据的错误条。
使用您的代码,这将导致:
有关更多信息,请参见以下示例:demo.html
https://stackoverflow.com/questions/40920864
复制相似问题