Cómo agregar un título a un diagrama de caja nacido en el mar

3 minutos de lectura

avatar de usuario
Esta muy frío

Parece bastante apto para Google, pero no he podido encontrar algo en línea que funcione.

he probado los dos sns.boxplot('Day', 'Count', data= gg).title('lalala') y sns.boxplot('Day', 'Count', data= gg).suptitle('lalala'). Ninguno funcionó. Creo que podría ser porque también estoy trabajando con matplotlib.

El diagrama de caja de Seaborn devuelve una instancia de ejes matplotlib. A diferencia de Pyplot, que tiene un método plt.title()el argumento correspondiente para un eje es ax.set_title(). Por lo tanto, debe llamar

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

Un ejemplo completo sería:

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()

Por supuesto, también podría usar la instancia de ejes devuelta para que sea más legible:

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

  • es una pena set_title() y funciones similares no return selfeso estaría bien.

    – Laurens Koppenol

    29 de agosto de 2019 a las 11:33

  • El credo de @LaurensKoppenol Matplotlib es devolver el objeto que el método crea o manipula. Esta es una cuestión de flexibilidad; y matplotlib explícitamente quiere dar a los usuarios esta flexibilidad. Las API de más alto nivel que se encuentran encima de matplotlib a menudo deciden permitir el encadenamiento, pero en esos casos tiene problemas para manipular los objetos subyacentes cuando desea un comportamiento no estándar.

    – La Importancia De Ser Ernesto

    29 de agosto de 2019 a las 11:41

  • al combinar las diversas interfaces que tiene matplotlib, definitivamente estoy de acuerdo

    – Laurens Koppenol

    29 de agosto de 2019 a las 11:45

  • AttributeError: el objeto ‘FacetGrid’ no tiene el atributo ‘set_title’

    – Tonto ML

    20 de agosto de 2020 a las 15:04

  • @DumbML ¿estás seguro de que estabas usando un boxpot? Esto no funciona con todos los métodos de generación de gráficos de seaborn. En particular, probé esto con lmplot y no funcionó (Mismo error)

    –Kelly Brower

    19 de julio a las 21:21

avatar de usuario
akhil penta

La función sns.boxplot() devuelve el objeto Axes(matplotlib.axes.Axes). por favor consulte el documentación
puede agregar un título usando el método ‘establecer’ como se muestra a continuación:

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

también puede agregar otros parámetros como xlabel, ylabel al método set.

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

Hay algunos otros métodos como se menciona en el matplotlib.axes.Axes documentación para agregar mosaicos, leyendas y etiquetas.

  • Esta es una buena solución ya que también funciona para sns.relplot().

    –James Brusey

    8 de octubre de 2020 a las 10:43


Intenta agregar esto al final de tu código:

import matplotlib.pyplot as plt

plt.title('add title here')

  • quizás la mejor solución, seguramente no puramente sns -ish, pero sin prisas y simple. Gracias

    – corredor de datos

    10 de noviembre de 2021 a las 20:37

Para un solo diagrama de caja:

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

Para más diagramas de caja en el mismo diagrama:

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

p.ej

import seaborn as sb
myarray=[78.195229, 59.104538, 19.884109, 25.941648, 72.234825, 82.313911]
sb.boxplot(data=myarray).set_title('myTitle')

.set_title(”) se puede usar para agregar título a Seaborn Plot

import seaborn as sb
sb.boxplot().set_title('Title')

avatar de usuario
Tayyab

prueba esto

import seaborn as sns
g = sns.catplot(x='Day', y='Count', data=gg)
g.set_title('LaLa')

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad