Tutorial de Python Seaborn | Visualización de datos usando Seaborn

Python es un almacén de numerosas bibliotecas y marcos inmensamente poderosos. Entre ellos, se encuentra nacido en el mar, que es dominante Visualización de datos biblioteca. En este tutorial de Python Seaborn, aprenderá todas las habilidades de visualización de datos usando Seaborn.

Entonces, comencemos primero razonando la importancia de Python Seaborn.

¿Por qué usar Python Seaborn?

Como se mencionó anteriormente, la biblioteca Python Seaborn se usa para facilitar la desafiante tarea de visualización de datos y se basa en Matplotlib. Seaborn permite la creación de gráficos estadísticos a través de las siguientes funcionalidades:

Una API que se basa en conjuntos de datos que permiten la comparación entre múltiples variables

Admite cuadrículas de varias parcelas que, a su vez, facilitan la creación de visualizaciones complejas

Visualizaciones univariadas y bivariadas disponibles para comparar entre subconjuntos de datos

Disponibilidad de diferentes paletas de colores para revelar varios tipos de patrones.

Estima y grafica la regresión lineal automáticamente

Entonces, si se preguntaba por qué usar Seaborn cuando ya tiene Matplotlib, aquí está la respuesta.

Python Seaborn contra Matplotlib:

“Si Matplotlib “intenta hacer que las cosas fáciles sean fáciles y las difíciles, posibles”, seaborn intenta hacer que un conjunto bien definido de cosas difíciles también sea fácil” – Michael Waskom (Creador de Seaborn).

De hecho, Matplotlib es bueno pero Seaborn es mejor. Básicamente, hay dos deficiencias de Matplotlib que Seaborn corrige:

Matplotlib se puede personalizar, pero es difícil averiguar qué configuraciones se requieren para hacer que las tramas sean más atractivas. Por otro lado, Seaborn viene con numerosos temas personalizados e interfaces de alto nivel para resolver este problema.

Cuando se trabaja con Pandas, Matplotlib no funciona bien cuando se trata de marcos de datos, mientras que las funciones de Seaborn realmente funcionan en marcos de datos.

¿Cómo instalar Seaborn?

Para instalar la biblioteca Python Seaborn, puede usar los siguientes comandos según la plataforma que use:

pip instalar seaborn

o

conda instalar seaborn

Una vez que esté instalado, solo asegúrese de instalar los paquetes y bibliotecas de los que depende Seaborn.

Instalación de dependencias de Python Seaborn:

Las dependencias obligatorias para seaborn son:

  • NumPy
  • SciPy
  • matplotlib
  • pandas

También hay una dependencia recomendada que es:

Para instalar estas bibliotecas, puede usar los mismos comandos que se muestran anteriormente para Seaborn con sus respectivos nombres. Una vez instalados, se pueden importar fácilmente. Seaborn le permite cargar cualquier conjunto de datos de GIT usando el cargar_conjunto_de_datos() función. También puede ver todos los conjuntos de datos disponibles usando la función get_dataset_names() de la siguiente manera:

EJEMPLO:

import seaborn as sns 
sns.get_dataset_names()

Esto devolverá una lista de todos los conjuntos de datos disponibles.
Ahora que ha configurado su entorno para trabajar con seaborn, avancemos más para ver cómo usar sus funciones de trazado en Python).

Funciones de trazado Seaborn

Visualización de relaciones estadísticas:

El proceso de comprender las relaciones entre las variables de un conjunto de datos y cómo estas relaciones, a su vez, dependen de otras variables se conoce como análisis estadístico. Ahora echemos un vistazo más profundo a las funciones necesarias para esto:

relplot():

Esta es una función de nivel de figura que hace uso de otras dos funciones de ejes para visualizar relaciones estadísticas que son:

Estas funciones se pueden especificar usando el parámetro ‘tipo’ de relplot(). En caso de que se proporcione este parámetro, se toma el predeterminado, que es diagrama de dispersión(). Antes de comenzar a escribir su código, asegúrese de importar las bibliotecas requeridas de la siguiente manera:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
sns.set(style="darkgrid")

Tenga en cuenta que el atributo de estilo también se puede personalizar y puede tomar cualquier valor como darkgrid, ticks, etc., que discutiré más adelante en la sección de estética de la trama. Veamos ahora un pequeño ejemplo:

EJEMPLO:

f = sns.load_dataset("flights")
sns.relplot(x="passengers", y="month", data=f);

PRODUCCIÓN:

Vuelos1-Python-Seaborn-Tutorial-Comprar.png

Como puede ver, los puntos se trazan en 2 dimensiones. Sin embargo, puede agregar otra dimensión usando la semántica ‘tono’. Veamos un ejemplo de lo mismo:

EJEMPLO:

f = sns.load_dataset("flights")
sns.relplot(x="passengers", y="month", hue="year", data=f);

Verá el siguiente resultado:

PRODUCCIÓN:

Vueloscolor3-Python-Seaborn-Tutorial-Running-1.png

Sin embargo, hay muchas más personalizaciones que puede probar, como colores, estilos, tamaño, etc. Permítame mostrarle cómo puede cambiar el color en el siguiente ejemplo:

EJEMPLO:

sns.set(style="darkgrid")
f = sns.load_dataset("flights")
sns.relplot(x="passengers", y="month", hue="year",palette="ch:r=-.5,l=.75", data=f);

PRODUCCIÓN:

Vueloscolor4 - Python - Seaborn - Tutorial - Comprar .png

diagrama de línea ():

Esta función le permitirá dibujar una línea continua para sus datos. Puede usar esta función cambiando el parámetro ‘tipo’ de la siguiente manera:

EJEMPLO:

a=pd.DataFrame({'Day':[1,2,3,4,5,6,7],'Grocery':[30,80,45,23,51,46,76],'Clothes':[13,40,34,23,54,67,98],'Utensils':[12,32,27,56,87,54,34]},index=[1,2,3,4,5,6,7])
g = sns.relplot(x="Day", y="Clothes", kind="line", data=a)
g.fig.autofmt_xdate()

PRODUCCIÓN:

Lineplot - Python - Seaborn - Tutorial - Comprar .png

El valor predeterminado para el diagrama de líneas es y como una función de x. Sin embargo, se puede cambiar si así lo desea. Hay muchas más opciones que puede probar más.

Ahora echemos un vistazo a cómo trazar datos categóricos.

Trazado con datos categóricos:

Este enfoque entra en escena cuando nuestra variable principal se divide en grupos discretos (categóricos). Esto se puede lograr usando la función catplot().

diagrama de gato ():

Esta es una función de nivel de figura como relplot(). Se puede caracterizar por tres familias de funciones de nivel de ejes, a saber:

Diagramas de dispersión: estos incluyen stripplot (), swarmplot ()

Gráficos de distribución, que son boxplot(), violinplot(), boxenplot()

Diagramas de estimación: a saber, diagrama de puntos (), diagrama de barras (), diagrama de conteo ()

Veamos ahora algunos ejemplos para demostrar esto:

EJEMPLO:

import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="ticks", color_codes=True)
a = sns.load_dataset("tips")
sns.catplot(x="day", y="total_bill", data=a);

PRODUCCIÓN:

catplot--python-seaborn-tutorial-buy.png

Como puede ver, en el ejemplo anterior no he configurado el parámetro ‘tipo’. Por lo tanto, ha devuelto el gráfico como el diagrama de dispersión predeterminado. Puede especificar cualquiera de las funciones de nivel de ejes para cambiar el gráfico según sea necesario. Tomemos un ejemplo de esto también:

EJEMPLO:

import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="ticks", color_codes=True)
a = sns.load_dataset("tips")
sns.catplot(x="day", y="total_bill", kind="violin", data=a);

PRODUCCIÓN:

violin5-Python-Seaborn-Tutorial-Ejecución-1.png

El resultado anterior muestra el gráfico de violín para el conjunto de datos de consejos. Ahora tratemos de encontrar cómo visualizar la distribución de un conjunto de datos.

Visualización de la distribución de un conjunto de datos:

Básicamente, se trata de comprender conjuntos de datos con contexto para ser univariados o bivariados. Antes de comenzar con esto, solo importa lo siguiente:

import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
from scipy import stats
sns.set(color_codes=True)

Una vez hecho esto, puede continuar trazando distribuciones univariadas y bivariadas.

Trazado de distribuciones univariadas:

Para trazarlos, puede utilizar la función distplot() de la siguiente manera:

EJEMPLO:

a = np.random.normal(loc=5,size=100,scale=2)
sns.distplot(a);

PRODUCCIÓN:

univariate6-Python-Seaborn-Tutorial-Edureka.png

Como puede ver en el ejemplo anterior, hemos trazado un gráfico para la variable a cuyos valores son generados por la función normal() usando distplot.

Trazado de distribuciones bivariadas:

Esto entra en escena cuando tienes dos variables aleatorias independientes que dan como resultado algún evento probable. La mejor función para trazar este tipo de gráficos es jointplot(). Tracemos ahora un gráfico bivariado usando jointplot().

EJEMPLO:

x=pd.DataFrame({'Day':[1,2,3,4,5,6,7],'Grocery':[30,80,45,23,51,46,76],'Clothes':[13,40,34,23,54,67,98],'Utensils':[12,32,27,56,87,54,34]},index=[1,2,3,4,5,6,7])
y=pd.DataFrame({'Day':[8,9,10,11,12,13,14],'Grocery':[30,80,45,23,51,46,76],'Clothes':[13,40,34,23,54,67,98],'Utensils':[12,32,27,56,87,54,34]},index=[8,9,10,11,12,13,14])
mean, cov = [0, 1], [(1, .5), (.5, 1)]
data = np.random.multivariate_normal(mean, cov, 200)
with sns.axes_style("white"):
sns.jointplot(x=x, y=y, kind="kde", color="b");

PRODUCCIÓN:

BivariateFacePlot7-Python-Seaborn-Tutorial-Edureka.png

Ahora que ha entendido las diversas funciones en Python Seaborn, avancemos para construir cuadrículas estructuradas de múltiples parcelas.

Cuadrículas de parcelas múltiples:

Python Seaborn le permite trazar múltiples cuadrículas una al lado de la otra. Estos son básicamente diagramas o gráficos que se trazan utilizando la misma escala y ejes para ayudar a la comparación entre ellos. Esto, a su vez, ayuda al programador a diferenciar rápidamente entre las tramas y obtener grandes cantidades de información.

Considere el siguiente ejemplo de la función facetgrid() para trazar estos gráficos.

EJEMPLO:

sns.set(style="darkgrid")
a = sns.load_dataset("iris")
b = sns.FacetGrid(a, col="species")
b.map(plt.hist, "sepal_length");

PRODUCCIÓN:

bivariatepairgrid9-Python-Seaborn-Tutorial-Edureka-1.png

El resultado anterior muestra claramente la comparación entre los consejos que se dan durante el almuerzo y la cena. También puede graficar usando la función PairGrid cuando tiene un par de variables para comparar. Considere el siguiente ejemplo.

EJEMPLO:

sns.set(style="ticks")
a = sns.load_dataset("flights")
b = sns.PairGrid(a)
b.map(plt.scatter);

PRODUCCIÓN:

bivariatepairgrid9-Python-Seaborn-Tutorial-Edureka-1.png

Como puede ver, el resultado anterior compara claramente entre el año y el número de pasajeros de diferentes maneras.

Seaborn también permite personalizaciones con respecto a la estética, que se analiza más adelante.

Trama-Estética:

Este segmento del tutorial de Python Seaborn trata de hacer que nuestras tramas sean más atractivas y agradables.

Python Seaborn Figura-Estética:

La primera función de la que hablaré es set(). He estado usando el parámetro ‘estilo’ de esta función antes. Este parámetro trata básicamente con temas marinos. En la actualidad, hay cinco de ellos disponibles, a saber, darkgrid, ticks, whitegrid, white y dark.

Considere el siguiente ejemplo que demuestra el tema blanco.

EJEMPLO:

import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="white", color_codes=True)
a = sns.load_dataset("tips")
sns.boxplot(x="day", y="total_bill", data=a);

PRODUCCIÓN:

style10-Python-Seaborn-Tutorial-Edureka.png

En el resultado anterior, puede notar que el tema cambia a blanco. También puede explorarlos más usando los otros temas. Si observa en la salida anterior, hay ejes presentes en todo el gráfico. Sin embargo, esto también es personalizable usando la función despine(). Mira el ejemplo de abajo.

EJEMPLO:

import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="white", color_codes=True)
a = sns.load_dataset("tips")
sns.boxplot(x="day", y="total_bill", data=a);
sns.despine(offset=10, trim=True);

PRODUCCIÓN:

despine10-Python-Seaborn-Tutorial-Crear-1.png

Tenga en cuenta la diferencia entre las dos salidas anteriores. Sin embargo, hay muchas más opciones que puedes explorar por ti mismo.

Paletas de colores Python Seaborn:

El color es básicamente la característica que acerca a los ojos humanos más allá de cualquier otra característica. Seaborn te permite jugar con los colores usando varias funciones como color_palette(), hls_palette(), husl_palette(), etc. Echa un vistazo a los colores que están presentes actualmente en seaborn.

EJEMPLO:

import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
sns.set()

presentcolors = sns.color_palette()
sns.palplot(presentcolors)

PRODUCCIÓN:

Color11-Python-Seaborn-Tutorial-Comprar.png

La imagen de arriba muestra los colores que están presentes dentro de seaborn. Lo he hecho usando la función palplot(). Para variaciones más profundas, puede usar hls_palette(), husl_palette(), etc.

Esto nos lleva al final del Tutorial de Python Seaborn. Espero que hayas entendido todo con claridad. Asegúrate de practicar tanto como sea posible..

Tienes una pregunta para nosotros? Menciónelo en la sección de comentarios de este blog “Tutorial de Python Seaborn” y nos pondremos en contacto con usted lo antes posible.

Similar Posts

Leave a Reply

Your email address will not be published.