Tikz-Feynman 手动放置顶点样式

Tikz-Feynman 手动放置顶点样式

我正在使用 Tikz-Feynman 的手动放置绘制费曼图:

\begin{tikzpicture}
\begin{feynman}
\vertex [label=left:\(x_1\)] (a) at (0,0);
\vertex (b) at (1,-1);
\vertex (c) at (2,-2);
\vertex (d) at (3,-3);
\vertex [label=right:\(x_2\)] (e) at (6,0);
\vertex [label=right:\(x_4\)] (g) at (6,-6);
\vertex [label=left:\(x_3\)] (f) at (0,-6);

\diagram*{
(a)  -- (b) -- [half left] (c) -- [half left] (b),
(c) -- (d) -- (e),
(f) -- (d) -- (g) 
};
\end{feynman}
\end{tikzpicture}

其结果是:

在此处输入图片描述

我希望每个端点顶点(在 x 处)都是一个小黑点,但我不知道该怎么做。我见过问题,但简单地在方括号中添加“点”似乎没有任何作用。在环境(a) [dot]中添加\diagram也没有任何效果。有什么想法吗?

答案1

我找到了一个解决方案。显然有一个漏洞这会导致这种情况。使用\node而不是可以解决这个问题\vertex。我的代码现在如下所示:

\begin{tikzpicture}
\begin{feynman}
\node [dot,label=left:\(x_1\)] (a) at (0,0);
\vertex (b) at (1,-1);
\vertex (c) at (2,-2);
\vertex (d) at (3,-3);
\node [dot,label=right:\(x_2\)] (e) at (6,0);
\node [dot,label=right:\(x_4\)] (g) at (6,-6);
\node [dot,label=left:\(x_3\)] (f) at (0,-6);

\diagram*{
(a)  -- (b) -- [half left] (c) -- [half left] (b),
(c) -- (d) -- (e),
(f) -- (d) -- (g) 
};
\end{feynman}
\end{tikzpicture}

看起来像这样:

在此处输入图片描述

答案2

在此处输入图片描述

手册第 19 页的语法对虚线使用了此语法

手册---https://jpellis.me/projects/tikz-feynman/tikz-feynman/tikz-feynman.pdf

相关内容