
\documentclass[border=2mm, tikz]{standalone}
\usetikzlibrary{shapes.geometric}
\begin{document}
\begin{tikzpicture}[
x=7.5mm,y=4.34mm,
box/.style={
regular polygon,
regular polygon sides=6,
minimum size=10mm,
inner sep=0mm, outer sep=0mm,
draw}
]
\node [box] (innerbox) {};
\foreach \x [evaluate=\x as \y using {int(ifthenelse(\x+2>6,\x-4,\x+2))}] in {1,...,6}
\node [box,anchor=corner \y] at (innerbox.corner \x) {};
\end{tikzpicture}
\end{document}
Quiero nombrar por ejemplo los hexágonos como en la siguiente figura:
Respuesta1
Su código no se puede compilar tal cual. Verifique que el código se compile antes de publicar un ejemplo, a menos que la cuestión sea no compilar. En ese caso, asegúrese de que produzca el error por el que pregunta.
Es posible que este código no funcione para usted. No es posible que produzca el resultado que se muestra sin errores porque contiene saltos de párrafo en todo tipo de lugares extraños al azar, lo que genera error tras error tras error.
En cuanto a la pregunta, ¿por qué no puedes simplemente usar una segunda variable en el bucle?
\documentclass[border=5pt, tikz]{standalone}
\usetikzlibrary{shapes.geometric}
\begin{document}
\begin{tikzpicture}[
x=7.5mm,y=4.34mm,
box/.style={
regular polygon,
regular polygon sides=6,
minimum size=10mm,
inner sep=0mm, outer sep=0mm,
draw}
]
\node [box] (innerbox) {g};
\foreach \i/\j [evaluate=\i as \k using {int(ifthenelse(\i+2>6,\i-4,\i+2))}] in {1/a,2/b,3/c,4/d,5/e,6/f}
\node [box,anchor=corner \k] at (innerbox.corner \i) {\j};
\end{tikzpicture}
\end{document}
EDITAR
También puede simplificar las cosas para que solo necesite especificar los nombres de los nodos. Por ejemplo:
\documentclass[border=5pt, tikz]{standalone}
\usetikzlibrary{shapes.geometric}
\begin{document}
\begin{tikzpicture}[
box/.style={
regular polygon,
regular polygon sides=6,
minimum size=10mm,
inner sep=0mm,
outer sep=0mm,
inner color=orange!75!red!50!yellow,
outer color=orange!75!red!75!yellow,
draw=orange,
text=red,
},
]
\node [box] (innerbox) {7};
\foreach \i [count=\k from 0, evaluate=\k as \j using {int(60*\k+30)}, evaluate=\j as \l using {(int(\j+180))} ] in {10,6,4,3,1,9}
\node (h\k) [box, anchor=\l] at (innerbox.\j) {\i};
\end{tikzpicture}
\end{document}
produce lo siguiente (para las abejas):