Círculos anidados
Mercado total, alcanzable y objetivo.
Definición
Unos círculos anidados dibujan dos a cuatro niveles contenidos uno en otro, como mercado total, servible y alcanzable, con el área de cada círculo proporcional a su tamaño. Se lee de fuera adentro, cada nivel como parte del anterior. Se usa sobre todo para presentar TAM, SAM y SOM.
- Datos
- label · value · sub
- Buena para
- Enseñar que un tamaño está contenido en otro y cuánto representa de él.
- Evítala cuando
- Cuando los conjuntos se solapan sólo en parte: esta figura sólo afirma pertenencia.
- Se lee bien
- Entre 2 y 4 elementos; dibuja hasta 6
- Datos que faltan
- Omite el valor ausente y lo declara aparte.
- Accesibilidad
- Lector de pantalla: tabla de datos · respeta «reducir movimiento»
Forma de los datos
Qué columnas pide
| Columna | Tipo | Para qué |
|---|---|---|
label · opcional | string | El nivel (TAM / SAM / SOM). Sin una columna de texto la pieza devuelve []. |
value · opcional | number | PRIMERA columna numérica por posición: el ÁREA del círculo, no su radio. |
sub · opcional | string | Segunda línea dentro de la forma. Se prefiere una columna llamada exactamente «sub»; si no, cualquier otra de texto. |
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.
Cuándo usarla
Tres preguntas antes de elegirla
¿Cada nivel está contenido entero en el anterior?
Si los conjuntos se solapan sólo en parte, hay que dibujar las intersecciones.
Sí: quédate con círculos anidados
No: usa Diagrama de Venn¿Son tres o cuatro niveles?
Si hay muchos grupos con jerarquía, se empaquetan los círculos.
Sí: quédate con círculos anidados
No: usa Empaquetado de círculos¿Basta con ver el orden de magnitud?
Si hay que leer razones exactas entre niveles, las barras se comparan mejor que las áreas.
Sí: quédate con círculos anidados
No: usa Gráfico de barras horizontalesCódigo
La misma pieza, con tus datos
import { getPreset, renderComposition } from 'visx-render/node';
const spec = await getPreset('nested-circles');
spec.data.rows = misFilas; // tus columnas
const { svg, warnings } = await renderComposition(spec);También en React con Chart y prepareComposition. Guía para desarrolladores →
Dudas
¿El valor es el radio del círculo?
No: es el área. El doble de valor es el doble de superficie, no el doble de diámetro.
¿Qué va en la segunda línea de cada círculo?
La columna «sub», si existe; si no, otra columna de texto.
¿Qué hace si faltan datos?
Omite el valor ausente y lo declara aparte.
¿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»
Anidamiento conceptualconceptos contenidos unos dentro de otros
Gráfico de anilloreparto de un total en pocas partes
Matriz de puntosresultados de casos individuales en cuadrícula
Descomposición DuPontdescomponer el ROE en sus factores
Gráfico de carámbanosjerarquía y pesos en bloques por niveles
Árbol con sangríasjerarquía detallada con su valor