Lección 17 de 19
Gráficas con pgfplots
Gráficas de líneas y barras generadas desde datos dentro del propio LaTeX: ejes, leyendas y salida vectorial perfecta.
Objetivos de la lección
- Dibujar gráficas de líneas y barras con pgfplots a partir de coordenadas
- Configurar ejes, rejillas y leyendas
- Entender cuándo conviene pgfplots frente a una imagen externa
La gráfica como parte del documento
pgfplots dibuja gráficas a partir de datos escritos en el propio fuente: el resultado es vectorial, con la tipografía del documento y sin exportaciones intermedias. Si cambias un dato y recompilas, la gráfica se actualiza sola — la filosofía LaTeX aplicada a los datos.
El esqueleto es un entorno axis dentro de tikzpicture: \addplot coordinates {(x,y) (x,y)...} traza series. Las opciones del eje (xlabel, ylabel, grid, legend pos) configuran la presentación.
No siempre es la mejor herramienta: para gráficas enormes o generadas por otro programa, una imagen includegraphics es más práctica. pgfplots brilla con datos pequeños y medianos que viven en el proyecto y necesitan coherencia tipográfica total.
La convivencia con babel
Con español (babel) hay un detalle clásico: babel activa algunos caracteres que confunden al parser de TikZ. La solución oficial es cargar \usetikzlibrary{babel} en el preámbulo: elige las coordenadas y el texto se interpretan correctamente.
Es un ejemplo perfecto del ecosistema de paquetes: dos paquetes populares que interactúan entre sí, con una solución documentada de una línea. Los mensajes de error por olvidarla son crípticos («Package pgf Error»), así que hazlo hábito desde el principio.
Líneas y barras desde datos
Dos gráficas: una de líneas con dos series y leyenda, otra de barras con ybar. Los datos son coordenadas literales; en tu proyecto podrían generarse desde un script y pegarse aquí.
Tu primera gráfica con leyenda
Dibuja una gráfica de líneas con dos series de cinco puntos cada una (inventadas) y leyenda en el ángulo sureste (legend pos=south east).
Etiqueta los ejes con magnitudes de tu carrera y activa la rejilla.