Árbol de decisión
Opciones, probabilidades y resultados esperados.
Definición
Un árbol de decisión abre una decisión en ramas con nombre, cada una con la probabilidad que alguien le declara, hasta llegar a los resultados. Los nodos distinguen decisión, azar y resultado, y el pago de cada final sólo tiñe el nodo de favorable, adverso o neutro. Se usa para exponer las opciones de una decisión y lo que puede pasar después de cada una.
- Datos
- from · branch · probability · payoff · nodeType
- Buena para
- Enseñar las opciones de una decisión, sus consecuencias y la probabilidad que se le da a cada una.
- Evítala cuando
- Cuando necesitas el valor esperado de cada opción: el árbol no lo calcula.
- Se lee bien
- Entre 3 y 30 elementos; dibuja hasta 300
- Accesibilidad
- Lector de pantalla: tabla de datos · respeta «reducir movimiento»
Forma de los datos
Qué columnas pide
| Columna | Tipo | Para qué |
|---|---|---|
from · opcional | string | Nodo del que sale la rama. La topología entera sale de esta columna y de `branch`. |
branch · opcional | string | Nodo al que llega la rama, y su rótulo. |
probability · opcional | string | Se imprime VERBATIM junto a la rama («60 %»): la figura no la normaliza ni comprueba que las hermanas sumen 1. |
payoff · opcional | number | NO se dibuja como cifra: sólo TIÑE el nodo de favorable / adverso / neutro (y sale en el tooltip, que el SVG no lleva). Un pago de CERO es un pago —«no hacer nada: 0 M€»— y ya no se colapsa en «desconocido»: el `|| undefined` que lo hacía está fuera. Vacío, en blanco o ilegible sí es «no declarado». |
nodeType · opcional | string | Forma del nodo (decisión, azar, terminal). |
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é: Decision tree: no noncolliding full branch label position Moderate
. 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
¿Las ramas llevan probabilidades o resultados?
Si sólo quieres descomponer un asunto en partes, usa el árbol jerárquico.
Sí: quédate con árbol de decisión
No: usa Árbol jerárquico¿Partes de una decisión y no de un fallo?
Si lo que quieres es explicar qué combinaciones de causas producen un fallo, usa el árbol de fallos.
Sí: quédate con árbol de decisión
No: usa Árbol de fallos¿Cada opción lleva a consecuencias con una probabilidad declarada?
Si es una discusión de posturas con argumentos a favor y en contra, sin probabilidades, usa el diagrama IBIS.
Sí: quédate con árbol de decisión
No: usa Diagrama IBISCódigo
La misma pieza, con tus datos
import { getPreset, renderComposition } from 'visx-render/node';
const spec = await getPreset('decisiontree');
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
¿Comprueba que las probabilidades sumen 1?
No. Se imprimen tal y como vienen junto a la rama, sin normalizarlas.
¿Cómo se ve el pago?
No se escribe como cifra: tiñe el nodo de favorable, adverso o neutro. Un pago de cero cuenta como pago.
¿Cómo se construye el árbol?
Con dos columnas: de qué nodo sale cada rama y a qué nodo llega. Una tercera indica la forma del nodo: decisión, azar o final.
¿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 «cómo funciona algo»
Matriz de adyacenciaquién se conecta con quién en una red
Diagrama de arcosconexiones entre nodos ordenados en una línea
Diagrama de pajaritacausas y consecuencias de un riesgo central
Columnas enfrentadascontrastar dos o más posturas
Rejilla con casilla vacíaver qué combinación falta
Diagrama de Ishikawacausas posibles de un problema por familias