2016-12-01 3 views
0

Le numéroPython - Comment puis-je ajouter des "moustaches" à un tracé de points?

J'ai un tracé de points que j'ai créé à partir de données importées. Un ensemble de données montre une série temporelle de moyennes sur différents membres d'un ensemble de données, et l'autre montre l'écart-type (SD) de ces membres à chaque pas de temps, avant que les moyennes ne soient prises. Mon conseiller veut que j'ajoute des "moustaches" qui montrent +/- 1 SD aux points représentant les moyennes. Je vais donner un exemple de travail simplifié ci-dessous.

Le code (par exemple)

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 a été multiplié par 5 donc des moustaches, lorsqu'il est ajouté, pourrait effectivement être visible. Le résultat devrait ressembler à ceci. enter image description here

La question

Comment puis-je ajouter des moustaches aux triangles qui représentent +/- 1 SD correspondant (les valeurs des cercles ci-dessous)? Compte tenu de mes données réelles ne montre pas une plage le long de la direction y, je ne pense pas une parcelle de boîte fonctionnerait mieux pour cela ...

Répondre

2

Vous pouvez ajouter des barres d'erreur avec:

ax.errorbar(time, xmean, yerr=std) 

Si yerr est un tableau 1D de la taille time, les barres d'erreur sont tirés à +/- yerr par rapport à vos données (xmean) (http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.errorbar):

Si un nombre scalaire, len (N) objet semblable à un tableau ou un objet de type tableau Nx1 ct, les barres d'erreur sont tracées à +/- valeur relative aux données.

Avec votre code, qui se traduit par:

enter image description here

Pour plus d'informations, voir ces exemples: http://matplotlib.org/1.2.1/examples/pylab_examples/errorbar_demo.html

+0

Parfait! Merci! – ChristineB