Dispersión 3D

Tres variables numéricas a la vez.

Definición

La dispersión 3D coloca cada elemento dentro de una caja según tres variables numéricas, con una línea de caída desde cada punto hasta el suelo. Sirve cuando la forma de la nube sólo aparece al mirar las tres a la vez: qué esquinas se ocupan, o dos grupos que sólo se separan con la tercera variable. Es una pieza para enseñar estructura, no para leer valores.

Cada servicio tira de un recurso, y de uno solo
Datos
x · y · z · series · label
Buena para
Enseñar una forma de la nube que ninguna pareja de variables muestra por separado.
Evítala cuando
Cuando hay que leer cifras: en una proyección la posición de un punto es ambigua, y sólo el eje vertical se lee sin dudas.
Se lee bien
Entre 4 y 30 elementos; dibuja hasta 30
Datos que faltan
Se niega a dibujar y dice qué valor falta.
Accesibilidad
Lector de pantalla: tabla de datos · respeta «reducir movimiento»

Forma de los datos

Qué columnas pide

ColumnaTipoPara qué
xnumberPrimera coordenada — eje horizontal del suelo de la caja. Su nombre de columna rotula el eje, unidad incluida.
ynumberSegunda coordenada — eje de PROFUNDIDAD, el que entra en la lámina.
znumberTercera coordenada — eje VERTICAL. Es la que lleva línea de caída al suelo, así que es la única que se lee sin ambigüedad: pon en ella la variable del argumento.
series · opcionalstringGrupo que colorea las marcas y monta la leyenda; sin ella, una sola tinta y sin leyenda. Se acepta además por los roles `group` y `color`, y en su defecto por nombre de columna (familia, grupo, segmento, tipo…).
label · opcionalstringEl nombre del ítem — es lo que rotula la marca. Si coincide con la columna de grupo, el punto se queda sin rótulo antes que repetir la leyenda dentro de la caja.

Tamaños

Ancha por necesidad

Esta pieza necesita anchura para que cada rótulo quepa entero. El motor prefiere decirlo a apretarla.

A menos de 480 px el motor se niega y explica por qué: perspective-observations: en 432×326 px de lienzo útil no cabe la caja de 220 px de lado que hace falta para leer tres ejes, con sus cifras sin pisarse y los 11. En el móvil se ve la versión ancha, a tamaño legible y sin recortar, dentro de un marco que se desliza.

Cuándo usarla

Tres preguntas antes de elegirla

¿El hallazgo sólo aparece con las tres variables a la vez?

Si dos de ellas bastan para contarlo, un gráfico de dispersión plano se lee con exactitud.

Sí: quédate con dispersión 3d

No: usa Gráfico de dispersión

¿Son sólo tres variables?

Si son cuatro o más, la matriz de dispersión enseña todos los pares sin perspectiva.

Sí: quédate con dispersión 3d

No: usa Matriz de dispersión

¿Son pocos puntos y con nombre?

Si son muchas observaciones y variables, el biplot de componentes principales resume la nube en un plano.

Sí: quédate con dispersión 3d

No: usa Biplot de componentes principales

Código

La misma pieza, con tus datos

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

const spec = await getPreset('scatter-3d');
spec.data.rows = misFilas; // x, y, z
const { svg, warnings } = await renderComposition(spec);

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

Dudas

¿En qué eje pongo la variable principal?

En el vertical: es el único que lleva línea de caída al suelo y se lee sin ambigüedad.

¿Cómo coloreo grupos?

Con una columna de serie; sin ella, todos los puntos van en una sola tinta y sin leyenda.

¿Cuántos puntos admite?

Se lee bien entre cuatro y treinta.

¿Qué hace si faltan datos?

Se niega a dibujar y dice qué valor falta.

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

A menos de 480 px el motor no la compone sin pisar o cortar rótulos, y lo dice. En el móvil se ve la versión ancha, a tamaño legible, dentro de un marco que se desliza.

Relacionadas

Otras formas de responder «dónde se sitúa cada uno»

Guía para elegir: dónde se sitúa cada uno →