Jak dodać tytuł do wykresu pola morskiego

110

Wydaje się, że można go znaleźć w Google, ale nie udało mi się znaleźć w Internecie czegoś, co działa.

Próbowałem obu sns.boxplot('Day', 'Count', data= gg).title('lalala')i sns.boxplot('Day', 'Count', data= gg).suptitle('lalala'). Żaden nie działał. Myślę, że może to być spowodowane tym, że pracuję również z matplotlib.

jest za zimno
źródło

Odpowiedzi:

187

Seaborn zwraca instancję osi matplotlib. W przeciwieństwie do samego pyplota, który ma metodę plt.title(), odpowiednim argumentem dla osi jest ax.set_title(). Dlatego musisz zadzwonić

sns.boxplot('Day', 'Count', data= gg).set_title('lalala')

Kompletny przykład to:

import seaborn as sns
import matplotlib.pyplot as plt

tips = sns.load_dataset("tips")
sns.boxplot(x=tips["total_bill"]).set_title("LaLaLa")

plt.show()

Oczywiście możesz również użyć zwróconej instancji axes, aby uczynić ją bardziej czytelną:

ax = sns.boxplot('Day', 'Count', data= gg)
ax.set_title('lalala')
ax.set_ylabel('lololo')
ImportanceOfBeingErnest
źródło
4
szkoda, set_title()a podobne funkcje nie return self, to byłoby fajne.
Laurens Koppenol
@LaurensKoppenol Credo Matplotlib polega na zwróceniu obiektu, który metoda tworzy lub manipuluje. To kwestia elastyczności; a matplotlib wyraźnie chce zapewnić użytkownikom taką elastyczność. Więcej API wysokiego poziomu, które znajdują się na szczycie matplotlib, często decydują się na zezwolenie na tworzenie łańcuchów, ale w takich przypadkach masz problemy z manipulowaniem obiektami bazowymi, gdy chcesz uzyskać niestandardowe zachowanie.
ImportanceOfBeingErnest
łącząc różne interfejsy, które ma matplotlib, zdecydowanie się zgadzam
Laurens Koppenol
AttributeError: Obiekt „FacetGrid” nie ma atrybutu „set_title”
Dumb ML
30

Spróbuj dodać to na końcu swojego kodu:

import matplotlib.pyplot as plt

plt.title('add title here')
Stefano Potter
źródło
13

Funkcja sns.boxplot () zwraca obiekt Axes (matplotlib.axes.Axes). zapoznaj się z dokumentacją, którą możesz dodać za pomocą metody „set”, jak poniżej:

sns.boxplot('Day', 'Count', data=gg).set(title='lalala')

możesz także dodać inne parametry, takie jak xlabel, ylabel do metody set.

sns.boxplot('Day', 'Count', data=gg).set(title='lalala', xlabel='its x_label', ylabel='its y_label')

Istnieje kilka innych metod, jak wspomniano w dokumentacji matplotlib.axes.Axes, aby dodać kafelek, legendę i etykiety.

akhil penta
źródło
8

Dla pojedynczego wykresu pudełkowego:

import seaborn as sb
sb.boxplot(data=Array).set_title('Title')

Aby uzyskać więcej wykresów pudełkowych na tym samym wykresie:

import seaborn as sb
sb.boxplot(data=ArrayofArray).set_title('Title')

na przykład

import seaborn as sb
myarray=[78.195229, 59.104538, 19.884109, 25.941648, 72.234825, 82.313911]
sb.boxplot(data=myarray).set_title('myTitle')
Shrm
źródło
4

.set_title ('') może służyć do dodawania tytułu do działki Seaborn

import seaborn as sb
sb.boxplot().set_title('Title')
Kranthi
źródło