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 puedo ordenar mi eje x en una gráfica de barras de pandas?

He estado luchando durante unos días en un proyecto universitario que tengo que entregar en una semana.
Estoy trabajando con un conjunto de datos (usando principalmente pandas) y tengo que analizar información sobre expediciones de montaña.
Mis gráficos de barras funcionan bien, pero sigo teniendo el mismo problema cada vez: mi eje x no está en orden creciente, lo cual no es de la mayor importancia, pero aún me molesta.
He estado buscando en todas partes en línea pero no puedo encontrar nada para solucionar mi problema.
Aquí está mi línea de código:

expeditions['members'].value_counts().plot.bar(figsize=(12,8))

La columna “members” solo contiene enteros y representa cuántas personas participaron en cada expedición. Pero esto es lo que obtengo:
enter image description here
¿Cómo ordeno el eje x en orden creciente? Me doy cuenta de que esto debe ser bastante simple, pero no puedo entender cómo hacerlo; y tengo el mismo problema con todos mis otros gráficos…
¡Gracias por la ayuda!

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para ordenar el eje x en orden creciente, puedes ordenar los valores de la columna antes de trazar el gráfico de barras. Puedes modificar tu código de la siguiente manera:

    expediciones['miembros'].value_counts().sort_index().plot.bar(figsize=(12,8))
    

    Esto ordenará los valores en la columna ‘miembros’ en orden ascendente antes de crear el gráfico de barras. El método sort_index() ordena el índice de la serie de recuentos de valores generada por value_counts() en orden ascendente.

    Si en lugar de eso necesitas ordenar en orden descendente, puedes pasar el argumento ascending=False a sort_values():

    expediciones['miembros'].value_counts().sort_values(ascending=False).plot.bar(figsize=(12,8))
    

    Esto ordenará los valores en orden descendente.

    ¡Espero que esto te ayude a resolver tu problema!

Comments are closed.