Empaquetado de círculos

Jerarquía como círculos dentro de círculos.

Definición

El empaquetado de círculos dibuja cada elemento como un círculo con área proporcional a su valor y lo mete dentro del círculo de su grupo. Primero se lee la pertenencia y después el tamaño dentro de cada grupo. Sirve para enseñar una jerarquía de categorías y elementos cuando importa más la forma del conjunto que la cifra exacta.

Technology Ecosystem
Datos
group · name · value
Buena para
Ver qué elementos pesan más dentro de cada grupo y cómo se agrupan.
Evítala cuando
Cuando hay que comparar elementos de grupos distintos o leer cifras: entre grupos el área deja de ser una comparación limpia.
Se lee bien
Entre 3 y 50 elementos; dibuja hasta 2000
Datos que faltan
Dibuja el valor ausente como cero.
Accesibilidad
Lector de pantalla: resumen en texto · respeta «reducir movimiento»

Forma de los datos

Qué columnas pide

ColumnaTipoPara qué
group · opcionalstringEl círculo contenedor. Ausente (o igual que el nombre de la hoja) → un solo nivel: todas las hojas cuelgan de la raíz.
namestringLa HOJA. Obligatoria de verdad: `requireColumn` lanza con la cifra si no está («sin hoja no hay nada que empaquetar»). Se pide POR NOMBRE a propósito, sin caída por tipo: caer a «la primera columna de texto» la hacía coincidir con el grupo y aplanaba el árbol.
value · opcionalnumberEl ÁREA de la hoja. Ausente = 1 para todas, y entonces el dibujo no afirma nada sobre magnitudes: sólo cuenta hojas.

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 × 474 px
Escritorio · 848 × 648 px

Cuándo usarla

Tres preguntas antes de elegirla

¿Importa más a qué grupo pertenece cada elemento que su tamaño exacto?

Si hay que comparar tamaños con precisión, un treemap aprovecha todo el espacio con rectángulos.

Sí: quédate con empaquetado de círculos

No: usa Treemap

¿Bastan dos niveles de jerarquía?

Si hay varios niveles que se quieren leer desde el centro hacia fuera, el gráfico de rayos solares los dibuja en anillos.

Sí: quédate con empaquetado de círculos

No: usa Gráfico de rayos solares

¿Los elementos se comparan dentro de su grupo?

Si hay que comparar elementos de todos los grupos entre sí, unas barras horizontales ordenadas lo hacen sobre un único eje.

Sí: quédate con empaquetado de círculos

No: usa Gráfico de barras horizontales

Código

La misma pieza, con tus datos

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

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

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

Dudas

¿Puedo comparar un círculo de un grupo con uno de otro grupo?

La pieza está pensada para comparar dentro de cada grupo, porque el círculo que contiene a los elementos fija de qué se habla. Entre grupos distintos, unas barras son más fiables.

¿Cuántos elementos admite?

Se lee bien entre 3 y 50.

¿Qué hace si faltan datos?

Dibuja el valor ausente como cero. Si un hueco no es un cero en tus datos, rellénalo o elimina la fila antes de dibujar.

¿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 «partes de un todo»

Guía para elegir: partes de un todo →