更新

更新

我有这个完整的子图:

\begin{tikzpicture}
  \graph[nodes={draw, circle}, n=5, clockwise, radius=2cm]
  { subgraph K_n; };
\end{tikzpicture}

如果我想以某种方式区分顶点 3,我可以咨询这个问题

\begin{tikzpicture}
  \graph[nodes={draw, circle}, n=5, clockwise, radius=2cm]
  { 1; 2; 3[fill=gray]; 4; 5; subgraph K_n; };
\end{tikzpicture}

现在,假设我不想突出显示它,而是想更改它的内容。例如,假设我想将其标签更改为希腊字母 alpha,而不是当前的 3。类似这样的操作将不起作用:

\begin{tikzpicture}
  \graph[nodes={draw, circle}, n=5, clockwise, radius=2cm]
  { 1; 2; 3[contents=$\alpha$]; 4; 5; subgraph K_n; };
\end{tikzpicture}

还有其他方法可以完成这个相当简单的任务,或者通常以自定义方式标记 K_n 的顶点吗?当然,我可以手动绘制 K_5 并标记节点,但是 tikzgraphs.standard库很好,我希望使用它来避免手动计算。

更新

我找到了一种用不同数字标记顶点 3 的方法。

\begin{tikzpicture}
  \graph[nodes={draw, circle}, n=5, clockwise, radius=2cm]
  { subgraph K_n [V={1,2,7,4,5}];};
\end{tikzpicture}

7如果我写的不是aFOO(在最后一种情况下,它会使节点稍微大一些),这也有效。我甚至可以在那里放7/2

我不能用 代替77,2即使在 里面{...}) 或\alpha$\alpha${$\alpha$}尝试其中任何一个只会破坏图表。

答案1

不确定这是否有帮助。它不使用,subgraph K_n而是手动指定节点,以便可以根据需要指定其内容。clique用于自动绘制连接,部分模拟提供的功能subgraph

\documentclass[tikz,border=10pt]{standalone}
\usetikzlibrary{graphs,graphs.standard}
\begin{document}
\begin{tikzpicture}
  \graph[nodes={draw, circle}, clique, n=5, clockwise, radius=2cm]
  {
    1/"$\alpha$", 2/"7,2", 3/"$x^2$", 4/"9,8,4", 5/"$\zeta$"
  };
\end{tikzpicture}
\end{document}

圆圈内的替代名称

答案2

非常感谢。这是非常有用的建议。我发现它也适用于简单的节点链graph。所以我猜它适用于整个graph库。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary {graphs}
\begin{document}

\tikz 
\graph [
1/.style={ minimum size=10pt, draw, circle},
0/.style={empty nodes},
]
{
""      -!-06[0]-!-07[0]-!-08[0];
""      -!-16/"1"[1]->17/"2"[1]->18/"3"[1]->"y(n+3)";
"u(n+3)"-!-25/"1"[1]->26/"2"[1]->27/"3"[1]->"y(n+2)";
"u(n+2)"-!-34/"1"[1]->35/"2"[1]->36/"3"[1]->"y(n+1)";
"u(n+1)"-!-43/"1"[1]->44/"2"[1]->45/"3"[1]->"y(n)";
"u(n)"  -!-52/"1"[1]->53/"2"[1]->54/"3"[1]->"y(n-1)";
"u(n-1)"-!-61/"1"[1]->62/"2"[1]->63/"3"[1]->"y(n-2)";

"u(n-2)"-!-b0-!-b1-!-b2;
b0->[dotted]62->54;
b1->[dotted]63;
"u(n-2)"->[dotted]61->53->45;"u(n-1)"->52->44->36;"u(n)"->43->35->27;"u(n+1)"->34->26->18;"u(n+2)"->25->17;

b0          ->61->52->43->34->25->16->[dotted]06;
b1          ->62->53->44->35->26->17->[dotted]07;
b2          ->63->54->45->36->27->18->[dotted]08;
};
\end{document}

在此处输入图片描述

相关内容