Gráfico de violín

Forma completa de una distribución por grupo.

Definición

Un gráfico de violín dibuja, para cada grupo, la forma completa de su distribución: el ancho a cada altura indica cuántas observaciones hay en torno a ese valor. Lleva además los cuartiles para situar el centro y la dispersión. Se usa para comparar grupos que pueden tener la misma mediana y repartos muy distintos.

Salary Distributions
Datos
category · value
Buena para
Comparar la forma de la distribución de varios grupos: si hay dos picos, una cola larga o una concentración.
Evítala cuando
Cuando cada grupo tiene pocas observaciones: con menos de diez, la forma estimada dice más del método que de los datos.
Se lee bien
Entre 10 y 500 elementos; dibuja hasta 3000
Datos que faltan
Se niega a dibujar y dice qué valor falta.
Accesibilidad
Lector de pantalla: resumen en texto · respeta «reducir movimiento»

Forma de los datos

Qué columnas pide

ColumnaTipoPara qué
categorystringIdentidad del grupo: un violín por valor distinto, en el orden de primera aparición. Binding exacto o alias; no admite identidades vacías.
valuenumberObservación individual finita: conserva ceros, negativos y repeticiones. Binding exacto o alias; sin nombre requiere una única medida candidata. KDE gaussiano h=8 con 50 puntos y cuantiles R-7.

Tamaños

Recompuesta, no encogida

El motor vuelve a componer la pieza a cada ancho: los rótulos conservan su cuerpo y la figura gana alto si lo necesita.

Móvil · 408 × 468 px
Escritorio · 848 × 642 px

Cuándo usarla

Tres preguntas antes de elegirla

¿Te importa la forma del reparto y no sólo la mediana y los cuartiles?

Si bastan cinco cifras por grupo, una caja es más sobria y se lee antes.

Sí: quédate con gráfico de violín

No: usa Diagrama de caja

¿Tienes al menos una decena de observaciones por grupo?

Con pocos datos es más honrado dibujar cada observación como un punto.

Sí: quédate con gráfico de violín

No: usa Beeswarm

¿Son pocos grupos, que caben uno al lado del otro?

Con muchos grupos, las crestas apiladas ahorran espacio y dejan ver cómo se desplaza la forma.

Sí: quédate con gráfico de violín

No: usa Ridgeline

Código

La misma pieza, con tus datos

import { getPreset, renderComposition } from 'visx-render/node';

const spec = await getPreset('violin');
spec.data.rows = misFilas; // category, value
const { svg, warnings } = await renderComposition(spec);

También en React con Chart y prepareComposition. Guía para desarrolladores →

Dudas

¿Qué representa el ancho?

Una estimación de la densidad de observaciones a cada altura. Más ancho significa más casos alrededor de ese valor.

¿Admite ceros y negativos?

Sí. Cada fila es una observación y se conservan ceros, negativos y repeticiones.

¿En qué orden salen los violines?

En el de primera aparición de cada grupo en tus datos.

¿Qué hace si faltan datos?

Se niega a dibujar y dice qué valor falta.

¿Cómo se ve en el móvil?

El motor la recompone a 360 px de ancho —rótulos, leyenda y alto— en vez de encoger la versión de escritorio.

Relacionadas

Otras formas de responder «cómo se reparten los valores»

Guía para elegir: cómo se reparten los valores →