Afficher dans le diagramme en boîte en python?
Je suis nouveau sur Matplotlib, et comme je suis en train d'apprendre comment dessiner diagramme en boîte en python, je me demandais si il existe un moyen d'afficher dans la boîte de parcelles?
Ci-dessous mon code..
from pylab import *
import matplotlib.pyplot as plt
data1=np.random.rand(100,1)
data2=np.random.rand(100,1)
data_to_plot=[data1,data2]
#Create a figure instance
fig = plt.figure(1, figsize=(9, 6))
# Create an axes instance
axes = fig.add_subplot(111)
# Create the boxplot
bp = axes.boxplot(data_to_plot,**showmeans=True**)
Même si j'ai showmean drapeau sur, il me donne l'erreur suivante.
TypeError: boxplot() got an unexpected keyword argument 'showmeans'
Votre code contient plusieurs (autres bugs). Vous devriez toujours vérifier avant de poster. Aussi, quelle est la version de matplotlib utilisez-vous?
J'ai corrigé le bug. Je suis à l'aide de v 1.4.3.
Quels sont vos data1 et data2?
En vérifiant, je voulais dire de l'exécuter. Il y a plusieurs choses que vous ne définissez pas (
J'ai corrigé le bug. Je suis à l'aide de v 1.4.3.
Quels sont vos data1 et data2?
En vérifiant, je voulais dire de l'exécuter. Il y a plusieurs choses que vous ne définissez pas (
data1
, data2
, ax
). Merci de voir si le code dans ma réponse fonctionne de votre côtéOriginalL'auteur parth patel | 2015-04-21
Vous devez vous connecter pour publier un commentaire.
C'est un exemple minimal et produit le résultat désiré:
EDIT:
Si vous voulez réaliser la même chose avec matplotlib version 1.3.1, vous aurez à tracer les moyens manuellement. Ceci est un exemple de comment le faire:
Résultat:
bp = ax.boxplot(data_to_plot, meanline=True, showmeans=True)
J'ai utilisé votre code et j'obtiens toujours la même erreur en ce qui concerne meanline ainsi que showmeans si je n'utilise pas meanline drapeau.
Et vous êtes sûr que vous êtes à l'aide de matplotlib version 1.4.3? Pour le trouver, vous pouvez le faire:
import matplotlib; print matplotlib.__version__
Je suis le responsable de la boîte à moustaches de la fonction et si vous êtes réellement en utilisant mpl v1.4 cela fonctionne.
et Paul H: je m'en excuse. J'utilise la version 1.3.1. C'est leur manière de montrer à dire avec cette version?
OriginalL'auteur hitzg
Vous pouvez également mettre à niveau les matplotlib:
et puis
Wow, ne vous attendez pas à de travail. Je l'ai aussi utilisé dans seaborn, fonctionne comme un charme.
OriginalL'auteur NargesooTv