es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo agregar etiquetas de datos individuales a countplot en seaborn?

He estado trabajando en un conjunto de datos de reclutamiento en el campus. La variable objetivo en el conjunto de datos es “status”, que indica si el estudiante está colocado o no. Ahora, estoy comparando cada variable (por ejemplo, género) con la variable objetivo (estado de colocación) para saber qué variable afecta más a la variable objetivo. Para comparar dos variables, he estado utilizando countplots en seaborn. El gráfico para la variable “género” se ve así.

Imagen que muestra el gráfico sns

El código para el gráfico sns es el siguiente:

ax = sns.countplot(x = "cat_degree_t", hue = "status", order = df['cat_degree_t'].value_counts().index, data = df);
abs_values = df["cat_degree_t"].value_counts().values;
ax.bar_label(container=ax.containers[0], labels=abs_values);

Ahora quiero saber cómo podría agregar valores a las barras individuales en el countplot (no el valor total como ya está escrito en la figura mostrada arriba, sino en cada barra individual). Esto me ayudaría a obtener el porcentaje de colocados y no colocados para cada categoría en la variable “género”.

Cualquier ayuda sería muy apreciada.

Gracias.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para agregar valores a las barras individuales en el countplot, puedes utilizar la función annotate en matplotlib para añadir los valores como texto encima de cada barra. Aquí está el código actualizado para el countplot:

    import matplotlib.pyplot as plt
    
    ax = sns.countplot(x="gender", hue="status", order=df['gender'].value_counts().index, data=df)
    abs_values = df["gender"].value_counts().values
    
    # añadir etiquetas de texto en cada barra
    for i, v in enumerate(abs_values):
        ax.text(i, v+1, str(v), color='blue', fontweight='bold')
    
    plt.show()
    

    Esto añadirá los valores de conteo como etiquetas de texto en cada barra del countplot. Puedes modificar los parámetros color y fontweight de la función text para ajustar la apariencia de las etiquetas. Luego, puedes utilizar estos conteos para calcular el porcentaje de estudiantes colocados y no colocados para cada categoría en la variable gender.

    Nota: En el código proporcionado, se utilizó la variable cat_degree_t en lugar de gender, por lo que he actualizado el código para utilizar gender basado en la figura mostrada.

Comments are closed.