
Según la documentación de la versión 3.0.0 de PGF/TikZ (Sección19 Especificación de gráficos, página 258), la poderosa graphs
biblioteca:
[...] potente comando de ruta para especificar cómo se conectan los nodos en un gráfico mediante aristas y arcos: el comando de ruta del gráfico, que está disponible cuando carga la
graphs
biblioteca.
Unas líneas más abajo hay algunos ejemplos del uso de la ruta; entre esos ejemplos se encuentra:
\tikz
\graph [nodes={draw, circle}, clockwise, radius=.5cm, empty nodes, n=5] {
subgraph I_n [name=inner] --[complete bipartite]
subgraph I_n [name=outer]
};
y
\tikz
\graph [nodes={draw, circle}, clockwise, radius=.75cm, empty nodes, n=8] {
subgraph C_n [name=inner] <->[shorten <=1pt, shorten >=1pt]
subgraph C_n [name=outer]
};
que debería producir las siguientes imágenes (tomada directamente de la documentación):
Sin embargo, cuando pruebo exactamente el mismo código en un documento "real":
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{graphs}
\begin{document}
\tikz
\graph [nodes={draw, circle}, clockwise, radius=.5cm, empty nodes, n=5] {
subgraph I_n [name=inner] --[complete bipartite]
subgraph I_n [name=outer]
};
\tikz
\graph [nodes={draw, circle}, clockwise, radius=.75cm, empty nodes, n=8] {
subgraph C_n [name=inner] <->[shorten <=1pt, shorten >=1pt]
subgraph C_n [name=outer]
};
\end{document}
Esto es todo lo que obtengo (imagen ampliada al 400%):
Aún más decepcionante es el siguiente ejemplo en la página 276:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{graphs}
\begin{document}
\tikz \graph [simple] {
subgraph K_n [n=8, clockwise];
% Get rid of the following edges:
1 -!- 2;
3 -!- 4;
6 -!- 8;
% And make one edge red:
1 --[red] 3;
};
\end{document}
La documentación muestra esto como resultado:
pero solo me sale un mensaje de error:
! Missing $ inserted.
<inserted text>
$
l.15 }
;
?
¿Me estoy perdiendo de algo? ¿Se requiere alguna otra biblioteca para obtener los gráficos esperados?
Respuesta1
Basado en mirar a través delpgf
fuente LaTeX de la documentación y tambiénesta respuesta, Creo que la documentación debería indicar eso.ambosSe incluyen las bibliotecas graphs
y graphs.standard
para producir estos gráficos.
Todos tus ejemplos funcionan si uso \usetikzlibrary{graphs,graphs.standard}
en lugar de only \usetikzlibrary{graphs}
. Aquí hay una muestra:
Código
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{graphs,graphs.standard} % both are required, in this order
\begin{document}
\tikz \graph [simple] {
subgraph K_n [n=8, clockwise];
% Get rid of the following edges:
1 -!- 2;
3 -!- 4;
6 -!- 8;
% And make one edge red:
1 --[red] 3;
};
\end{document}
Producción