Saltar al contenido
Topos Uranos

Resumen

Esta clase enseña a dibujar dentro del documento con TikZ. Explica qué se gana al dibujar en LaTeX (la tipografía y las fórmulas del texto, la escala sin pérdida, la corrección en la fuente y el control de versiones), qué cuesta, y cuándo conviene más exportar un gráfico desde R o Python; muestra que, con babel en español, TikZ necesita su biblioteca babel, sin la cual la primera flecha produce una cascada de errores; presenta el entorno tikzpicture y la instrucción \tikz, las coordenadas cartesianas, polares y relativas, y los caminos (segmentos, rectángulos, círculos, arcos y curvas); recorre las opciones del trazo y las flechas de la biblioteca arrows.meta; enseña los nodos, con nombre, con anclas y ubicados unos respecto de otros con la biblioteca positioning; fija la notación con estilos propios; repite con \foreach; compone un diagrama de flujo, un esquema de fuerzas, un árbol de conceptos, un árbol sintáctico y la gráfica de una función, advirtiendo que plot mide los ángulos en grados; presenta pgfplots para los gráficos de datos; pone la figura en un flotante y compara las tres maneras de escalarla; y termina con los errores típicos, el tiempo de compilación y lo que no conviene hacer.

Objetivos de aprendizaje

  1. Decidir con razones si una figura conviene dibujarla con TikZ, trazarla con pgfplots o exportarla desde un programa de análisis de datos.
  2. Preparar el preámbulo de un documento en español para TikZ y explicar por qué hace falta la biblioteca babel.
  3. Dibujar con coordenadas absolutas, polares y relativas, y predecir el camino que traza una secuencia de coordenadas con + y ++.
  4. Componer diagramas con nodos con nombre, ubicados con la biblioteca positioning, y con estilos propios definidos una sola vez.
  5. Insertar un dibujo en un flotante con su pie y su etiqueta, escalarlo prediciendo qué ocurre con el texto y diagnosticar los errores típicos a partir del registro.

Por qué dibujar en LaTeX

Las clases anteriores insertaron imágenes hechas fuera del documento. Un dibujo hecho con TikZ, en cambio, se escribe en la fuente con instrucciones, y el motor lo compone como compone el texto. De ello se siguen cuatro ventajas. La primera es la unidad tipográfica: los rótulos del dibujo usan la misma letra y el mismo tamaño que el texto, y una fórmula en un rótulo es idéntica a la del párrafo que la comenta. La segunda es la escala sin pérdida: el resultado es vectorial, de modo que se amplía sin que aparezcan los píxeles. La tercera es que el dibujo se corrige en la fuente: cambiar un rótulo o desplazar un punto es cambiar una línea, sin volver a un programa de dibujo ni buscar el archivo original. La cuarta es que el dibujo se versiona con el texto, porque es texto: queda en el mismo archivo, en la misma copia de respaldo y en el mismo historial.

Ahora bien, estas ventajas tienen un precio. TikZ es un lenguaje con su propia sintaxis, cuyo manual supera las mil páginas, y un dibujo que en un programa gráfico se hace con el ratón en un minuto puede pedir aquí media hora la primera vez. Por tanto, conviene distinguir. Los esquemas, los diagramas y las figuras geométricas, que se componen de pocas formas con rótulos, son el terreno natural de TikZ. Los gráficos de datos, en cambio, se hacen mejor con pgfplots, construido sobre TikZ y presentado al final de esta clase, o, si los datos se analizan en R o en Python, con el mismo programa que los analiza: el gráfico se exporta en PDF y se inserta como en la clase dedicada a las imágenes, y queda unido a los datos y al análisis que lo producen. Ambos lenguajes ofrecen además salidas que escriben el gráfico en código para LaTeX (el paquete tikzDevice en R y la salida PGF de matplotlib en Python), de modo que los rótulos adoptan la letra del documento.