2015-05-21 12 views
10

मैं समुद्री डाकू में एक कारक प्लॉट प्लॉट करना चाहता हूं लेकिन सीबर्न की गणना करने के बजाय मैन्युअल रूप से त्रुटि बार प्रदान करना चाहता हूं।सीबर्न कारक साजिश कस्टम त्रुटि बार

 model output feature mean std 
0 first two  a 9.00 2.00 
1 first one  b 0.00 0.00 
2 first one  c 0.00 0.00 
3 first two  d 0.60 0.05 
... 
77 third four  a 0.30 0.02 
78 third four  b 0.30 0.02 
79 third four  c 0.10 0.01 

और मैं एक साजिश है कि इस तरह मोटे तौर पर लग रहा है outputting हूँ:

मैं एक पांडा dataframe है कि इस तरह मोटे तौर पर दिखता है seaborn bar plots

मैं इस Seaborn उपयोग कर रहा हूँ उत्पन्न करने के लिए आदेश भूखंड:

g = sns.factorplot(data=pltdf, x='feature', y='mean', kind='bar', 
        col='output', col_wrap=2, sharey=False, hue='model') 
g.set_xticklabels(rotation=90) 

हालांकि, मैं समझ नहीं कैसे त्रुटि सलाखों के रूप में 'एसटीडी' कॉलम Seaborn उपयोग करने के लिए। दुर्भाग्यवश, प्रश्न में डेटा फ्रेम के आउटपुट को दोबारा लगाने के लिए काफी समय लगेगा।

यह एक छोटे से इस क्ष के समान है: Plotting errors bars from dataframe using Seaborn FacetGrid

मैं सिवाय को समझ नहीं सकता कि यह कैसे matplotlib.pyplot.bar समारोह के साथ काम करने के लिए।

क्या मैटलप्लिब के साथ संयुक्त factorplot या FacetGrid का उपयोग करके ऐसा करने का कोई तरीका है?

धन्यवाद!

+0

कुछ कर सकते हैं मुझे लगता है कि जुड़ा हुआ सवाल जाना सबसे अच्छा तरीका होने जा रहा है। 'plt.bar' में' yerr' पैरामीटर है जो मदद करनी चाहिए। – mwaskom

+0

धन्यवाद @mwaskom, इसे पाने के लिए कैसे कोई सुझाव है? वर्तमान में निम्नलिखित कोड चुक्स: 'g = sns.FacetGrid (डेटा = pltdf, col = 'output', col_wrap = 6, sharey = झूठी, ह्यू = 'मॉडल') g.map (plt.bar, 'feature', 'मतलब', yerr = 'std') ' – crackedegg

+0

गन्दा कोड के लिए क्षमा चाहते हैं, यह टिप्पणी अनुभाग में अच्छी तरह से प्रारूपित करने के लिए प्रतीत नहीं होता है। – crackedegg

उत्तर

4

आप की तरह

import seaborn as sns 
import matplotlib.pyplot as plt 
from scipy.stats import sem 
tips = sns.load_dataset("tips") 

tip_sumstats = (tips.groupby(["day", "sex", "smoker"]) 
        .total_bill 
        .agg(["mean", sem]) 
        .reset_index()) 

def errplot(x, y, yerr, **kwargs): 
    ax = plt.gca() 
    data = kwargs.pop("data") 
    data.plot(x=x, y=y, yerr=yerr, kind="bar", ax=ax, **kwargs) 

g = sns.FacetGrid(tip_sumstats, col="sex", row="smoker") 
g.map_dataframe(errplot, "day", "mean", "sem") 

enter image description here

+0

तारकीय, और आपकी सहायता के लिए आपको बहुत अधिक @mwaskom धन्यवाद, और आपके द्वारा एकत्र किए गए प्यारे पैकेज। यह वास्तव में अविश्वसनीय रूप से उपयोगी है। – crackedegg

+1

@mwaskom रंग रखने के दौरान मैं त्रुटि बार कैसे जोड़ूं –

संबंधित मुद्दे