Gráficos de líneas con pgfplots
Añade un \addplot por línea dentro de un axis; da estilo a cada una con opciones como red, dashed, thick o mark=square*, o deja que la lista cíclica elija un estilo por ti.
Varias líneas en un mismo eje
Cada \addplot añade una serie. Sin opciones, las series toman su estilo de la lista cíclica por turnos. Con \addplot+[...] mantienes ese estilo y cambias una parte de él.
Tres series de la lista cíclica predeterminada
\begin{tikzpicture}
\begin{axis}[xlabel=Week, ylabel=Orders, legend pos=north west]
\addplot coordinates {(1,12) (2,18) (3,25) (4,31) (5,44)};
\addplot coordinates {(1,10) (2,14) (3,15) (4,21) (5,24)};
\addplot+[dashed] coordinates {(1,5) (2,9) (3,8) (4,12) (5,13)};
\legend{Erika, Hans, John}
\end{axis}
\end{tikzpicture}Estilos de línea y marcas
Las opciones tras \addplot fijan el color, la línea y las marcas. Puedes combinarlas libremente.
| Opción | Valores | En Scissor LaTeX |
|---|---|---|
| color | red, blue!60!black, color=teal, cualquier nombre o mezcla de xcolor | Funciona |
| grosor de línea | ultra thin, very thin, thin, semithick, thick, very thick, ultra thick, line width=1.5pt | Funciona |
| patrón de trazos | solid, dashed, dotted, densely dashed, loosely dotted, dashdotted, dash pattern=on 4pt off 2pt | Funciona |
mark= | *, o, square*, square, triangle*, triangle, diamond*, diamond, x, +, star, pentagon*, asterisk, otimes*, |, -, none | Funciona |
mark size=3pt | radio de la marca | Funciona |
mark options={fill=white} | estilo solo de las marcas | Funciona |
mark repeat=2 | una marca cada dos puntos | Funciona |
no marks, only marks | solo líneas, solo marcas | Funciona |
Colores, patrones de trazos y marcas
\begin{tikzpicture}
\begin{axis}[domain=0:4, samples=9, legend pos=outer north east]
\addplot[blue, thick, mark=*] {x};
\addplot[red, dashed, mark=square*, mark options={fill=white}] {x^1.5/2};
\addplot[teal, densely dotted, very thick] {sqrt(x)};
\addplot[orange, mark=triangle*, mark size=3pt, only marks] {4 - x};
\legend{linear, power, root, falling}
\end{axis}
\end{tikzpicture}Las marcas se dibujan siempre con líneas continuas, incluso en una serie discontinua, como en pgfplots.
Elegir una lista cíclica
Una lista cíclica es la secuencia de estilos que usan los comandos \addplot sin opciones. Elige una predefinida con cycle list name, o escribe la tuya con cycle list.
La lista cíclica black white y una propia
\begin{tikzpicture}
\begin{axis}[cycle list name=black white, width=6.5cm, height=5cm, title={black white}]
\addplot coordinates {(0,0) (1,1) (2,4)};
\addplot coordinates {(0,1) (1,2) (2,2)};
\addplot coordinates {(0,2) (1,0) (2,1)};
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[cycle list={{red, thick}, {blue, dashed}}, width=6.5cm, height=5cm, title={custom}]
\addplot coordinates {(0,0) (1,1) (2,4)};
\addplot coordinates {(0,1) (1,2) (2,2)};
\end{axis}
\end{tikzpicture}Nombres predefinidos que funcionan: color (el predeterminado), exotic, black white, mark list y linestyles. \pgfplotscreateplotcyclelist{name}{...} en el preámbulo define una lista que puedes reutilizar.
Curvas suaves y escalones
smooth dibuja una curva que pasa por los puntos en lugar de segmentos rectos; tension (0.55 por defecto) controla lo redondeada que es. const plot dibuja una función escalonada que mantiene cada valor hasta el punto siguiente.
smooth y const plot
\begin{tikzpicture}
\begin{axis}[ymin=0, legend pos=north west]
\addplot+[smooth] coordinates {(0,1) (1,2.5) (2,1.8) (3,3.2) (4,2.4)};
\addplot+[const plot] coordinates {(0,0.5) (1,1) (2,1.5) (3,1.2) (4,2)};
\legend{smooth, const plot}
\end{axis}
\end{tikzpicture}Funciones en grados y radianes
Las fórmulas usan pgfmath: + - * / ^, paréntesis, sqrt, exp, ln, abs, min, max, sin, cos, tan y más, con pi y e como constantes. Los ángulos van en grados, así que convierte los radianes con deg(x).
sin y cos en un periodo
\begin{tikzpicture}
\begin{axis}[domain=0:2*pi, samples=80, xlabel=$t$,
xtick={0,1.5708,3.1416,4.7124,6.2832},
xticklabels={$0$,$\frac{\pi}{2}$,$\pi$,$\frac{3\pi}{2}$,$2\pi$},
legend pos=south west]
\addplot[blue, thick] {sin(deg(x))};
\addplot[red, thick, dashed] {cos(deg(x))};
\legend{$\sin t$, $\cos t$}
\end{axis}
\end{tikzpicture}Curvas paramétricas
Para dibujar una curva dada por x(t) e y(t), escribe ambas fórmulas entre paréntesis, separadas por una coma, y fija variable=t.
Una curva de Lissajous
\begin{tikzpicture}
\begin{axis}[axis lines=middle, xmin=-1.3, xmax=1.3, ymin=-1.3, ymax=1.3]
\addplot[purple, thick, domain=0:360, samples=120, variable=t]
({cos(t)}, {sin(2*t)});
\end{axis}
\end{tikzpicture}Huecos en una curva
Una función como 1/x se dispara hacia el infinito. restrict y to domain descarta los puntos fuera de un rango, y unbounded coords=jump corta ahí la línea en lugar de unir las dos ramas. Pon ambas en el \addplot.
1/x con un corte en cero
\begin{tikzpicture}
\begin{axis}[ymin=-10, ymax=10, axis lines=middle]
\addplot[blue, thick, domain=-3:3, samples=200,
restrict y to domain=-10:10, unbounded coords=jump] {1/x};
\end{axis}
\end{tikzpicture}Diferencias con una instalación de TeX
El manual de pgfplots en CTAN describe todas las opciones: ctan.org/pkg/pgfplots. Para puntos sin líneas, consulta gráficos de dispersión.
Consulta también Fundamentos de pgfplots, Ejes logarítmicos, Gráficos agrupados y Datos desde CSV.
Preguntas y respuestas
¿Cómo dibujo una función en LaTeX?
Escribe \addplot[domain=a:b, samples=n] {formula}; dentro de un axis, con x como variable, por ejemplo {x^2 - 1}.
¿Cómo quito las marcas de una línea?
Añade no marks a las opciones del \addplot, o da opciones sin + (por ejemplo \addplot[blue]), lo que dibuja una línea simple.
¿Por qué sin(x) sale casi plano?
pgfplots lee el ángulo en grados, así que sin(x) de 0 a 6 cubre solo 6 grados. Escribe sin(deg(x)).
Scissor LaTeX compone cada ejemplo de esta página al generar el sitio. Última actualización: 2026-11-07.