Estás leyendo la publicación: Una guía práctica para implementar ggplot en python usando plotnine
La visualización de los datos juega un papel crucial en la mayoría de las tareas de análisis de datos. El paquete ggplot del lenguaje de programación R hace que R sea más rico en el lado de la visualización de datos. También en python, varios paquetes también están disponibles para la visualización de datos. Si las características y capacidades de ggplot se pueden usar en python, será una ventaja valiosa en muchas tareas específicas de visualización. En este artículo, exploraremos cómo podemos usar ggplot en python para visualizar datos usando un paquete llamado plotnine que se basa en ggplot2. Los puntos principales que se discutirán en el artículo se enumeran a continuación.
Tabla de contenidos
- ¿Qué es ggplot?
- Primera trama
- Factorización de puntos de datos
- Ggplot con marco de datos de pandas
Comencemos con una breve introducción a ggplot.
¿Qué es ggplot?
Conocemos principalmente a ggplot como un paquete utilizado en R para visualizaciones de datos. Este paquete es el responsable de hacer de R una de las mejores herramientas en el mundo de la visualización de datos. Este paquete es creado por Hadley Wickham y puede considerarse como una implementación de la gramática de gráficos sugerida por Leland Wilkinson.
La gramática de los gráficos se puede considerar como un esquema que representa la división de los gráficos en componentes semánticos. Ejemplos de componentes de gráficos pueden ser escalas y capas. Ggplot se vuelve más útil debido a su capacidad para crear gráficos elegantes y claros. Desde un usuario normal hasta un usuario final avanzado del lenguaje R, utilizan este paquete para la visualización.
En este artículo, vamos a utilizar el paquete plotnine para la implementación del paquete ggplot en python. Hay varios paquetes de python como matplotlib, plotly, ggpy, etc. en python para la visualización, pero también es necesario explorar las capacidades de ggplot. Para explorar esto, usaremos el paquete plotnine que cubre todas las características de ggplot y las extenderemos a python.
Podemos instalar plotnine usando las siguientes líneas de códigos:
pip instalar ‘plotnine[all]’
Después de la instalación, estamos listos para usar ggplot para visualizar datos en python.
Primera trama
En esta sección, conoceremos cómo podemos usar los conjuntos de datos de práctica de los paquetes de tramas que están disponibles en forma de datos tabulares de pandas. Podemos decir que cada conjunto de datos disponible en este paquete tiene la forma de un marco de datos de pandas. Podemos llamarlos usando el subpaquete plotnine plotnine.data. Podemos encontrar la lista de conjuntos de datos de práctica de plotnine aquí.
Importemos el conjunto de datos mtcars.
desde plotnine importar * desde plotnine.data importar mtcars mtcars
Producción:
Aquí podemos ver valores en nuestro marco de datos. Usemos ggplot para hacer un gráfico eligiendo dos variables.
gráfico = (ggplot(mtcars, aes(‘disp’, ‘mpg’)) + geom_point()) gráfico
Producción:
Aquí podemos ver que hemos trazado mpg contra el desplazamiento de los autos usando ggplot dentro de plotnine. Pasemos al lado profundo de ggplot.
Factorización de puntos de datos
En el conjunto de datos, hemos visto que tenemos muchos valores categóricos como podemos clasificar nuestros datos en función de la cantidad de cilindros utilizados por el motor. La gráfica anterior también se puede factorizar usando colores según el número de cilindros de la siguiente manera.
gráfico = (ggplot(mtcars, aes(‘disp’, ‘mpg’)) + geom_point()) gráfico
Producción:
También podemos factorizar gráficos en lugar de solo factorizar usando puntos usando las siguientes líneas de código.
plot =(ggplot(mtcars, aes(‘disp’, ‘mpg’, color=”factor(cyl)”)) + geom_point() + facet_wrap(‘~cyl’)) plot
producción:
Hagámoslo más elegante.
plot =(ggplot(mtcars, aes(‘disp’, ‘mpg’, color=”factor(cyl)”)) + geom_point() + facet_wrap(‘~cyl’) + theme_xkcd()) plot
Producción:
Aquí hemos utilizado el tema de ggplot para hacer más atractiva la visualización de datos.
Ggplot con marco de datos de pandas
En esta sección, trabajaremos con el marco de datos de pandas para hacer gráficos usando ggplot, para esto, estamos usando el conjunto de datos titánico que se puede encontrar aquí. Importemos el conjunto de datos.
importar pandas como pd data = pd.read_csv(‘https://web.stanford.edu/class/archive/cs/cs109/cs109.1166/stuff/’+’titanic.csv’) data.head()
Producción:
Dibujemos un gráfico que nos diga cuántas personas de los datos del Titanic sobrevivieron según su clase de pasajero.
datos[‘Survived’] = datos[‘Survived’].astype(‘categoría’) ggplot(aes(x=”Pclass”, fill=”Sobrevividos”), data) + geom_bar(stat=”count”) + theme_xkcd()
Producción:
Aquí podemos ver un gráfico de barras que hicimos usando ggplot para datos titánicos. Hagamos un gráfico que nos diga la edad promedio de las personas que sobrevivieron y las que no sobrevivieron.
ggplot(datos, aes(x=’Sobrevivido’, y=’Edad’)) + \ geom_violin()
Producción:
Aquí podemos ver que en los datos que tenemos, las personas que sobrevivieron tienen en su mayoría 20 años. Echemos un vistazo a la categorización del gráfico según el sexo.
ggplot(data, aes(x=’Sobrevivido’, y=’Edad’)) + \ geom_boxplot() + \ facet_wrap([‘Sex’])
Producción:
Aquí hemos segregado a las personas en función de su sexo y estado de supervivencia utilizando un diagrama de caja que también representa un rango según la edad. Segreguemos más la trama.
ggplot(data, aes(x=’Sobrevivido’, y=’Edad’)) + \ geom_boxplot() + \ facet_wrap([‘Sex’,’Pclass’]) + tema_xkcd()
Producción:
Aquí podemos ver un diagrama de caja segregado según sexo y clase.
Ultimas palabras
En el artículo, hemos visto cómo podemos usar las funciones de visualización de datos de ggplot en python. Para este propósito, hemos usado plotnine como nuestro paquete base para ggplot. Usando ggplot hemos hecho que nuestro procedimiento de visualización sea más atractivo y fácil.
Referencias