Nodos, flechas y diagramas con TikZ
Coloca cada caja con \node[draw] (name) {text};, sitúa las siguientes con la biblioteca positioning (right=of name) y conéctalas con \draw[->] (a) -- (b);.
Nodos
Un nodo es un fragmento de texto en un punto, opcionalmente con un marco. draw le da un contorno, fill un fondo, y circle o ellipse una forma redondeada (rectangle es la predeterminada). Un nombre entre paréntesis te permite referirte al nodo más adelante.
Nodos con formas, rellenos y tamaños
\begin{tikzpicture}
\node[draw] (a) at (0,0) {plain box};
\node[draw, rounded corners, fill=blue!10] (b) at (3,0) {rounded};
\node[draw, circle, fill=yellow!40] (c) at (5.5,0) {44};
\node[draw, ellipse] (d) at (8,0) {ellipse};
\node[draw, minimum width=2.5cm, minimum height=1cm] at (1,-1.6) {fixed size};
\node[draw, text width=2.6cm, align=center] at (5,-1.6) {text that wraps onto two lines};
\end{tikzpicture}Flechas entre nodos
\draw[->] (a) -- (b); dibuja una flecha del nodo a al nodo b. La línea empieza y termina en los bordes de los nodos, no en sus centros. -| y |- dibujan conexiones en ángulo recto.
Un pequeño diagrama de flujo con la biblioteca positioning
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning, arrows.meta}
\begin{document}
\begin{tikzpicture}[
node distance=1.2cm and 1.6cm,
box/.style={draw, rounded corners, fill=blue!8, minimum width=2.2cm, minimum height=0.8cm},
>={Stealth},
]
\node[box] (in) {Read data};
\node[box, right=of in] (clean) {Clean};
\node[box, right=of clean] (fit) {Fit model};
\node[draw, circle, below=of clean] (ok) {OK?};
\draw[->] (in) -- (clean);
\draw[->] (clean) -- (fit);
\draw[->] (fit) |- (ok);
\draw[->] (ok) -| node[pos=0.75, left] {no} (in);
\end{tikzpicture}
\end{document}right=of in pone el nodo a la derecha de in, separado por node distance. Las demás direcciones son left, above, below y las diagonales como above right. right=2cm of in fija la distancia para un solo nodo.
Etiquetas en flechas y nodos
Un node escrito en mitad de un camino lo etiqueta. above, below, left, right fijan el lado, y midway, near start, near end o pos=0.3 la posición a lo largo del camino. label=below:text añade una etiqueta a un nodo.
Un diagrama de estados con aristas curvas y etiquetadas
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning, arrows.meta}
\begin{document}
\begin{tikzpicture}[state/.style={draw, circle, minimum size=1cm}, >={Stealth}, node distance=2.4cm]
\node[state, label=below:start] (s0) {$q_0$};
\node[state, right=of s0] (s1) {$q_1$};
\node[state, right=of s1, fill=green!15] (s2) {$q_2$};
\draw[->] (s0) to[bend left] node[above] {$a$} (s1);
\draw[->] (s1) to[bend left] node[below] {$b$} (s0);
\draw[->] (s1) -- node[above] {$a$} (s2);
\end{tikzpicture}
\end{document}Anclajes
Cada nodo tiene anclajes en su borde: north, south, east, west y las esquinas como north east. (box.north) es el punto central superior de box.
Flechas desde los anclajes de un nodo
\begin{tikzpicture}
\node[draw, minimum width=3cm, minimum height=1cm] (box) {Server};
\draw[->] (box.north) -- ++(0,0.7) node[above] {north};
\draw[->] (box.east) -- ++(1,0) node[right] {east};
\draw[->] (box.south west) -- ++(-0.6,-0.6) node[below left] {south west};
\node[anchor=west] at (box.south east) {\small (anchor=west)};
\end{tikzpicture}anchor=west en un nodo lo coloca de forma que su anclaje oeste quede en el punto indicado.
Puntas de flecha
| Opción | Punta | En Scissor LaTeX |
|---|---|---|
->, <-, <-> | la punta predeterminada de TikZ | Funciona |
-stealth, -latex | las puntas clásicas stealth y LaTeX | Funciona |
-{Stealth}, -{Latex} (arrows.meta) | las puntas más nuevas | Funciona |
|-| | una barra en cada extremo | Funciona |
>={Stealth} en la figura | la punta que usa -> | Funciona |
opciones de punta como -{Stealth[length=3mm]} | tamaños y formas de la punta | En parte: la punta se dibuja con su tamaño predeterminado |
Los tamaños de las puntas se parecen mucho a los de TikZ, pero no son idénticos.
Qué no se admite
Estas funciones compilan en una instalación de TeX pero no aquí. La mayoría se notifican en la pestaña Problemas.
| Función | Qué pasa en Scissor LaTeX | Qué escribir en su lugar |
|---|---|---|
\matrix (y matrix of nodes) | Toda la figura se convierte en un recuadro discontinuo con un mensaje | Coloca los nodos con at (x,y) o con positioning |
\pic | Toda la figura se convierte en un recuadro discontinuo con un mensaje | Repite el dibujo en un scope con shift |
decoraciones (decorate, decoration=...) | Se ignoran con un mensaje; el camino se dibuja liso | Un camino liso o discontinuo |
formas de nodo de shapes.geometric (diamond, trapezium ...) | Se dibujan como rectángulo, con un mensaje | rectangle, circle o ellipse |
líneas double | Se ignoran con un mensaje | Dos nodos o caminos |
to[loop above] (un bucle sobre un nodo) | No se dibuja ningún bucle ni se muestra ningún mensaje; su etiqueta queda sobre el nodo | Un arc o una curva .. controls .. desde el borde del nodo |
pin= | Se muestra el texto del pin, sin la línea del pin | label= |
pos= en un camino -| o |- | La etiqueta se coloca solo a lo largo del segundo tramo, así que pos=0.25 cae cerca de la esquina | Etiqueta el segundo tramo con pos=0.75, o divide el camino en dos |
tikz-cd, circuitikz, forest | La figura se omite, con un mensaje | TikZ sencillo, o una imagen |
\matrix se convierte en un marcador de posición
\begin{tikzpicture}
\matrix[draw] {
\node {a}; & \node {b}; \\
\node {c}; & \node {d}; \\
};
\end{tikzpicture}Pestaña Problemas: \matrix in a picture is not supported yet
Un nodo con forma de rombo se dibuja como rectángulo
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric}
\begin{document}
\begin{tikzpicture}
\node[draw, diamond] at (0,0) {Yes?};
\node[draw, ellipse] at (2.5,0) {ellipse works};
\end{tikzpicture}
\end{document}Pestaña Problemas: TikZ node option 'diamond' is not supported yet
El manual de TikZ (en el paquete PGF) trata los nodos, la biblioteca positioning y las puntas de flecha: ctan.org/pkg/pgf. Para formas y caminos, consulta dibujos con TikZ.
Consulta también Fundamentos de TikZ, TikZ y Figuras e imágenes.
Preguntas y respuestas
¿Cómo dibujo un diagrama de flujo en LaTeX?
Usa nodos de TikZ con draw para las cajas, la biblioteca positioning (right=of a, below=of b) para colocarlos y \draw[->] (a) -- (b); para las flechas.
¿Cómo pongo texto sobre una flecha en TikZ?
Escribe un nodo en mitad del camino: \draw[->] (a) -- node[above] {text} (b);.
¿Funciona tikz-cd en Scissor LaTeX?
Todavía no. Un diagrama tikzcd se omite con un mensaje. Dibuja en su lugar diagramas sencillos con nodos y flechas.
Scissor LaTeX compone cada ejemplo de esta página al generar el sitio. Última actualización: 2026-11-07.