32. Lectura e interpretación de gráficos

Los gráficos permiten ver patrones que una tabla puede ocultar. Interpretarlos correctamente ayuda a entender tendencias, comparar datos, detectar errores y comunicar resultados.

32.1 Introducción

Un gráfico convierte datos numéricos en una representación visual. En programación, los gráficos aparecen en paneles de control, reportes, estadísticas, monitoreo, videojuegos, simulaciones y ciencia de datos.

Leer un gráfico no significa solo mirar si una línea sube o baja. También hay que revisar ejes, escalas, unidades, intervalos, valores extremos y contexto.

En este tema trabajaremos la interpretación conceptual y algunos cálculos básicos con datos representables en gráficos.

32.2 Partes de un gráfico

Un gráfico suele tener título, ejes, escala, etiquetas, unidades y datos representados.

Parte Función
Título Indica qué muestra el gráfico
Eje x Suele representar tiempo, categorías o variable independiente
Eje y Suele representar cantidad, medida o variable dependiente
Escala Indica cómo se distribuyen los valores
Unidades Explican qué mide cada valor

32.3 Ejes y coordenadas

Muchos gráficos usan puntos con coordenadas (x, y). Cada punto relaciona una entrada con una salida.

(día, ventas)
(1, 120)
(2, 150)
(3, 170)
const puntos = [
  { x: 1, y: 120 },
  { x: 2, y: 150 },
  { x: 3, y: 170 }
];

console.log(puntos);

32.4 Escala

La escala determina cuánto representa cada división del eje. Dos gráficos con los mismos datos pueden verse muy distintos si usan escalas diferentes.

Un eje que va de 0 a 1000 muestra variaciones pequeñas.
Un eje que va de 900 a 1000 puede hacer que esas variaciones parezcan enormes.
const valores = [920, 940, 960, 980];
const minimo = Math.min(...valores);
const maximo = Math.max(...valores);

console.log(minimo);
console.log(maximo);
console.log(maximo - minimo);

El rango del eje influye en la percepción visual.

32.5 Tendencias

Una tendencia describe la dirección general de los datos: creciente, decreciente o estable.

function tendencia(valores) {
  const primero = valores[0];
  const ultimo = valores[valores.length - 1];

  if (ultimo > primero) return "Creciente";
  if (ultimo < primero) return "Decreciente";
  return "Estable";
}

console.log(tendencia([10, 12, 15, 18]));
console.log(tendencia([20, 18, 15, 12]));
console.log(tendencia([5, 6, 4, 5]));

Este método es simple: compara solo el inicio y el final. Para análisis más finos se necesitan más datos.

32.6 Máximos y mínimos

Al leer un gráfico conviene identificar valores máximos y mínimos. Indican picos, caídas, límites o casos especiales.

const ventas = [120, 150, 90, 210, 180];

console.log(Math.max(...ventas));
console.log(Math.min(...ventas));

Los máximos y mínimos ayudan a detectar puntos importantes dentro de una serie.

32.7 Ubicar el índice de un máximo

No basta con conocer el valor máximo: muchas veces necesitamos saber cuándo ocurrió.

const ventas = [120, 150, 90, 210, 180];
const maximo = Math.max(...ventas);
const indice = ventas.indexOf(maximo);

console.log(maximo);
console.log(indice);

El índice puede representar día, período, posición o categoría, según el contexto.

32.8 Pendiente entre dos puntos

En un gráfico de línea, la pendiente indica la velocidad de cambio entre dos puntos.

pendiente = (y2 - y1) / (x2 - x1)
const p1 = { x: 1, y: 120 };
const p2 = { x: 4, y: 210 };

const pendiente = (p2.y - p1.y) / (p2.x - p1.x);

console.log(pendiente);

Una pendiente positiva indica aumento. Una negativa indica disminución.

32.9 Comparar series

Muchos gráficos muestran más de una serie. Para compararlas, debemos mirar valores, diferencias y tendencias.

const productoA = [100, 130, 160, 200];
const productoB = [120, 125, 140, 150];

const crecimientoA = productoA[productoA.length - 1] - productoA[0];
const crecimientoB = productoB[productoB.length - 1] - productoB[0];

console.log(crecimientoA);
console.log(crecimientoB);

El producto A crece más en términos absolutos durante el período.

32.10 Promedio en una serie

El promedio ayuda a resumir una serie de valores, aunque puede ocultar picos o caídas.

const valores = [120, 150, 90, 210, 180];
const suma = valores.reduce((total, valor) => total + valor, 0);
const promedio = suma / valores.length;

console.log(promedio);

Siempre conviene mirar el promedio junto con máximos, mínimos y distribución.

32.11 Variación porcentual en gráficos

Una variación porcentual permite interpretar cuánto cambió una serie respecto de su valor inicial.

const inicial = 120;
const final = 180;
const variacion = (final - inicial) / inicial * 100;

console.log(variacion);

Este cálculo es frecuente al leer gráficos financieros, métricas de usuarios o rendimiento.

32.12 Gráficos engañosos

Un gráfico puede confundir si usa una escala recortada, omite unidades, cambia intervalos o mezcla series que no son comparables.

  • Eje y que no empieza en cero cuando eso cambia la percepción.
  • Intervalos irregulares en el eje x.
  • Unidades omitidas o mezcladas.
  • Promedios usados para ocultar variaciones fuertes.
  • Colores o tamaños que exageran diferencias pequeñas.
const valores = [98, 99, 100];
const rangoCompleto = 100 - 0;
const rangoRecortado = 100 - 98;

console.log(rangoCompleto);
console.log(rangoRecortado);

Un rango recortado puede hacer que una diferencia pequeña parezca visualmente grande.

32.13 Elegir el tipo de gráfico

No todos los gráficos sirven para lo mismo. Elegir bien el tipo de gráfico mejora la interpretación.

Tipo Uso típico
Línea Evolución en el tiempo
Barras Comparación entre categorías
Dispersión Relación entre dos variables
Circular Partes de un total, con pocas categorías

32.14 Errores comunes

  • Mirar solo la forma visual sin revisar la escala.
  • Comparar series con unidades distintas.
  • Ignorar valores extremos.
  • Confundir correlación visual con causa.
  • Usar promedios sin revisar dispersión.
  • No revisar si el eje x tiene intervalos regulares.
const serie = [10, 10, 10, 10, 100];
const suma = serie.reduce((total, valor) => total + valor, 0);
const promedio = suma / serie.length;

console.log(promedio);
console.log(Math.max(...serie));

El promedio no muestra por sí solo que hay un valor extremo.

32.15 Qué debes recordar de este tema

  • Un gráfico debe leerse revisando título, ejes, unidades y escala.
  • La escala puede cambiar mucho la percepción visual.
  • Una tendencia puede ser creciente, decreciente o estable.
  • Máximos y mínimos ayudan a detectar puntos importantes.
  • La pendiente indica cambio entre dos puntos.
  • El promedio resume, pero puede ocultar extremos.
  • Un gráfico puede ser engañoso si omite contexto o usa escalas inadecuadas.

32.16 Conclusión

Leer gráficos correctamente es una habilidad esencial para interpretar datos. En programación, permite construir mejores reportes, detectar errores y comunicar información con precisión.

En el próximo tema estudiaremos tablas de valores y representación gráfica, para construir datos que luego puedan visualizarse.