Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python—如何添加“Python”;“胡须”;点图?_Python_Matplotlib_Standard Deviation - Fatal编程技术网

Python—如何添加“Python”;“胡须”;点图?

Python—如何添加“Python”;“胡须”;点图?,python,matplotlib,standard-deviation,Python,Matplotlib,Standard Deviation,问题 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

问题

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)。我的顾问希望我在代表平均值的点上添加显示+/-1 SD的“胡须”。下面我将提供一个简化的工作示例

代码(示例)

SD乘以5,所以当添加时,胡须实际上是可见的。结果应该是这样的。

问题


如何将胡须添加到表示+/-1对应SD的三角形(下面圆圈的值)?鉴于我的实际数据没有显示沿y方向的范围,我不认为方框图最适合于此…

您可以添加错误条,包括:

ax.errorbar(time, xmean, yerr=std)
如果
yerr
是一个大小为
time
的1D数组,则相对于数据(
xmean
)在+/-
yerr
处绘制错误条():

如果是标量数、len(N)数组类对象或Nx1 类似于数组的对象,错误条以+/-相对值绘制 对数据进行修改

对于您的代码,这将导致:


有关更多信息,请参见以下示例:

您可以使用以下选项添加错误条:

ax.errorbar(time, xmean, yerr=std)
如果
yerr
是一个大小为
time
的1D数组,则相对于数据(
xmean
)在+/-
yerr
处绘制错误条():

如果是标量数、len(N)数组类对象或Nx1 类似于数组的对象,错误条以+/-相对值绘制 对数据进行修改

对于您的代码,这将导致:

有关更多信息,请参见以下示例: