Seaborn Facet Plot में एक शीर्षक कैसे जोड़ें


96

मैं इस सीबोर्न प्लॉट में एक शीर्षक कैसे जोड़ूं? आइए इसे एक शीर्षक दें 'I AM A TITLE'।

tips = sns.load_dataset("tips")
g = sns.FacetGrid(tips, col="sex", row="smoker", margin_titles=True)
g.map(sns.plt.scatter, "total_bill", "tip")

भूखंड

जवाबों:


167

उन पंक्तियों के बाद:

plt.subplots_adjust(top=0.9)
g.fig.suptitle('THIS IS A TITLE, YOU BET') # can also get the figure from plt.gcf()

यदि आप अक्ष को समायोजित किए बिना एक प्रकार का पौधा जोड़ते हैं, तो सीबॉटल पहलू शीर्षक इसे ओवरलैप करते हैं।

(विभिन्न आंकड़ों के साथ):

यहां छवि विवरण दर्ज करें


6
यह मेरे लिए काम करता था लेकिन मुझे plt.subplots_adjust(top=0.8)इसके बजाय उपयोग करना था top=0.9
मैक

5
suptitleएक yपैरामीटर भी है । इसने मेरे लिए काम किया:g.fig.suptitle('foo', y=1.05)
trianta2

1
यह काम नहीं करता है यदि आप के col_wrapरूप में उपयोग करते हैं तो आंकड़ा और अंतिम अक्ष सबप्लॉट (नीचे दाएं) एक ही शीर्षक विरासत में मिलेगा।
xApple

25

Ipython नोटबुक में, इसने मेरे लिए काम किया!

sns.plt.title('YOUR TITLE HERE')

10
मैंने इसे आज़माया और इसने एक शीर्षक को नीचे दाईं आकृति में जोड़ा, न कि पूरे आंकड़े पर
crypdick

12
पैकेज के pltमाध्यम से पहुँच sns0.8.1 में चित्रित की गई है। यह प्रयोग किया जाना चाहिएplt.title('YOUR TITLE HERE')
मैक

2
विशेषता: मॉड्यूल 'सीबोर्न' में कोई विशेषता नहीं है 'plt'
xApple

गुण: मॉड्यूल 'सीबॉर्न' में कोई विशेषता नहीं है 'plt'
seralouk


3

मेरे लिए क्या काम था:

sns.plt.suptitle('YOUR TITLE HERE')


2
विशेषता: मॉड्यूल 'सीबॉर्न' में कोई विशेषता नहीं है 'plt'
xApple

1
गुण: मॉड्यूल 'सीबॉर्न' में कोई विशेषता नहीं है 'plt'
seralouk

1
plt.suptitle("Title") 

या

plt.title("Title")

इसने मेरे लिए काम किया।


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

0

जवाब का उपयोग sns.plt.title()और sns.plt.suptitle()अब काम नहीं करते।

इसके बजाय, आपको matplotlib के title()फ़ंक्शन का उपयोग करने की आवश्यकता है :

import matplotlib.pyplot as plt
sns.FacetGrid(<whatever>)
plt.title("A title")

1
यह मेरे लिए सही स्थान पर शीर्षक सेट नहीं करता है।
गेब्रियल रोमन

4
क्या आपने कोशिश की plt.suptitle()?
crypdick

आपका उत्तर काम नहीं करता है क्योंकि यह अंतिम अक्षों के उप-भाग (नीचे दाएं) के शीर्षक को प्रभावित करता है। आपका सुझाव plt.suptitle()अंतिम अक्षों के साथ-साथ मुख्य आकृति को भी संशोधित करता है।
xApple

0

शीर्षक सबप्लॉट शीर्षक के साथ संरेखित नहीं किया जाएगा। आप उपयोग कर सकते हैं शीर्षक की स्थिति निर्धारित करने के लिए plt.suptitle("Title", x=center)

मेरे मामले में, मेरे सबप्लॉट 2x1 ग्रिड में थे, इसलिए मैं bbox = g.axes[0,0].get_position()बाउंडिंग बॉक्स और फिर खोजने के लिए उपयोग करने में सक्षम था center=0.5*(bbox.x1+bbox.x2)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.