2017-04-01 11 views
5

मैं Seaborn का उपयोग https://seaborn.pydata.org/examples/factorplot_bars.htmlनिकालें Seaborn barplot कथा शीर्षक

मुझे देते में के रूप में एक वर्गीकृत किया बार साजिश साजिश: https://seaborn.pydata.org/_images/factorplot_bars.png

वहाँ कथा जो मैं निकालना चाहते हैं पर एक शीर्षक (सेक्स) है।

मैं इसे कैसे प्राप्त कर सकता हूं?

+0

आप कोड का उपयोग कर रहे जोड़ने की जरूरत है FacetGrid में हर अक्ष के लेबल एडजस्ट करती हैं। – Ali

उत्तर

4

यह एक hacky समाधान हो सकता है, लेकिन यह काम करता है: यदि आप Seaborn बता साजिश रचने के समय में इसे बंद छोड़ने के लिए और फिर इसे जोड़ने इसे वापस नहीं है कथा का शीर्षक:

g = sns.factorplot(x='Age Group',y='ED',hue='Became Member',col='Coverage Type', 
        col_wrap=3,data=gdf,kind='bar',ci=None,legend=False,palette='muted') 
#               ^^^^^^^^^^^^ 
plt.suptitle('ED Visit Rate per 1,000 Members per Year',size=16) 
plt.legend(loc='best') 
plt.subplots_adjust(top=.925) 
plt.show() 

उदाहरण परिणाम :

enter image description here

+0

सुंदर। वैसे, यह पांडा के साथ काम करता है साथ ही – famargar

+1

@ फामार्गर: मुझे बताने के लिए धन्यवाद :-) आपको खुश कोडिंग! – bernie

4

एक कम hacky रास्ता matplotlib की वस्तु उन्मुख इंटरफ़ेस का उपयोग करने के लिए है। अक्षों के नियंत्रण प्राप्त करके, यह साजिश को अनुकूलित करने के लिए बहुत आसान बना देगा। resulting_plot

0

आप कथा चाहते हैं में

import seaborn as sns 
import matplotlib.pyplot as plt 
sns.set(style="whitegrid") 

# Load the example Titanic dataset 
titanic = sns.load_dataset("titanic") 

# Draw a nested barplot to show survival for class and sex 
fig, ax = plt.subplots() 
g = sns.factorplot(x="class", y="survived", hue="sex", data=titanic, 
        size=6, kind="bar", palette="muted", ax=ax) 
sns.despine(ax=ax, left=True) 
ax.set_ylabel("survival probability") 
l = ax.legend() 
l.set_title('Whatever you want') 
fig.show() 

परिणाम, साजिश अक्ष के बाहर दिखाया जा सकता है के रूप में factorplot के लिए डिफ़ॉल्ट है, तो आप FacetGrid.add_legend उपयोग कर सकते हैं (factorplot रिटर्न एक FacetGrid उदाहरण)। अन्य तरीकों आप पर

एक बार
import seaborn as sns 
import matplotlib.pyplot as plt 
sns.set(style="whitegrid") 

# Load the example Titanic dataset 
titanic = sns.load_dataset("titanic") 

# Draw a nested barplot to show survival for class and sex 
g = sns.factorplot(x="class", y="survived", hue="sex", data=titanic, 
        size=6, kind="bar", palette="muted", legend=False) 
(g.despine(left=True) 
    .set_ylabels('survival probability') 
    .add_legend(title='Whatever you want') 
) 
संबंधित मुद्दे