Este artículo muestra cómo hacer un diagrama de violín agrupado con Seaborn en python. Violinplot es una excelente manera de visualizar los datos como una combinación del diagrama de caja con los diagramas de densidad kernel para producir un nuevo tipo de diagrama.
Para este artículo, utilizaremos el conjunto de datos del iris para trazar datos. Esto viene incorporado en Seaborn y se puede cargar con el método load_dataset. El conjunto de datos del iris tiene cuatro características (sepal_length sepal_width petal_length petal_width) que son todas numéricas y una es la columna de destino (especies) que contiene los nombres de las flores. (Virginica, Setosa, Versicolor). En seaborn, podemos trazar diagramas de violín utilizando el método seaborn.violinplot().
Sintaxis: seaborn.violinplot(x, y, tono, datos, interior, ancho de línea,…)
Parámetros:
1. x, y, hue : nombres de variables en datos o datos vectoriales, opcional
2. datos : DataFrame, array o lista de arrays, opcional
3. interior : {“caja”, “cuartil”, “punto”, “palo”, Ninguno}, (opcional): Representa puntos de datos en el interior del violín.
4. linewidth float, (opcional): Ancho de las líneas grises que enmarcan los elementos de la trama.
Devoluciones:
hacha: matplotlib Ejes
Los siguientes ejemplos te ayudarán a entender mejor:
Ejemplo 1: Trazado Un único gráfico de violín horizontal.
Python3
import seaborn as sns import pandas as pd datasets = sns.load_dataset('iris') datasets.head() sns.violinplot(datasets['sepal_length'])
Producción:
En el gráfico anterior, el pequeño punto blanco es la mediana de la característica y la línea delgada representa el rango intercuartílico.
En lugar de simplemente pasar la columna numérica única, también podemos pasar una columna categórica. En nuestro caso, la especie.
Ejemplo 2: Trazar los diagramas de violín agrupados con Seaborn.
(Creando un diagrama de violín agrupado usando las columnas sepal_width y especies).
Python3
import seaborn as sns import pandas as pd datasets = sns.load_dataset('iris') datasets.head() sns.violinplot(x='species', y='sepal_width', data=datasets, inner="quart", linewidth=1)
Producción:
En esta gráfica, el eje x representa las tres especies diferentes de flores. por ejemplo (Virginica, Setosa, Versicolor). Podemos inferir fácilmente de la gráfica anterior que Setosa tiene un ancho de sépalo más alto que los otros dos. Pero el ancho del sépalo por sí solo no nos ayudará a distinguir las tres categorías. Por lo tanto, será necesario considerar otras características al construir nuestros modelos ml. El diagrama de violín también brinda información sobre la distribución de probabilidad de las características, como que la clase Versicolor está ligeramente sesgada.
Ejemplo 3 : Representación de un diagrama de Violín entre especies de petal_length Vs.
Python3
import seaborn as sns import pandas as pd datasets = sns.load_dataset('iris') datasets.head() sns.violinplot(x='species', y='petal_length', data=datasets, inner="quart", linewidth=1)
Producción:
Diferenciar las clases con esta característica es mucho mejor que la anterior.
Publicación traducida automáticamente
Artículo escrito por clivefernandes777 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA