使用 tikz-feynman 包的费曼图尺寸错误

使用 tikz-feynman 包的费曼图尺寸错误

我有一个简单的问题,涉及以下代码:

\documentclass{article}
% lualatex
\usepackage{tikz-feynman}

\begin{document}
\begin{figure}[h!]
\centering

\feynmandiagram [inline=(b), horizontal=a to b] {
a --[fermion] b [dot]  -- [blue, gluon] c, 
b  -- [fermion] d
};
\qquad
\feynmandiagram [inline=(b), horizontal=a to b] {
a --[blue, gluon] b [dot]  -- [ghost] c, 
b  -- [ghost] d
};
\qquad
\feynmandiagram [inline=(b), horizontal=a to b] {
a --[blue, gluon] b [dot]  -- [blue, gluon] c, 
b  -- [blue, gluon] d
};
\qquad
\feynmandiagram [inline=(b), horizontal=a to d] {
a --[blue, gluon] b [dot]  -- [blue, gluon] c, 
b  -- [blue, gluon] d,
b  -- [blue, gluon] e,
};

\end{figure}
\end{document}

第四张图比其他图稍大一些,如下所示:

在此处输入图片描述

我该怎么做才能使所有图表具有相同的大小?

答案1

我不会使用类似\resizebox或类似的工具来缩放图表。这会改变线宽和点的大小,并使你的论文看起来像一封勒索信。

相反,你可以稍微移动坐标以朝正确的方向移动:

% !TeX TS-program = lualatex

\documentclass{article}
% lualatex
\usepackage{tikz-feynman}

\begin{document}
\begin{figure}[h!]
\centering

\feynmandiagram [inline=(b), horizontal=a to b] {
a --[fermion] b [dot]  -- [blue, gluon] c, 
b  -- [fermion] d
};
\qquad
\feynmandiagram [inline=(b), horizontal=a to b] {
a --[blue, gluon] b [dot]  -- [ghost] c, 
b  -- [ghost] d
};
\qquad
\feynmandiagram [inline=(b), horizontal=a to b] {
a --[blue, gluon] b [dot]  -- [blue, gluon] c, 
b  -- [blue, gluon] d
};
\qquad
\feynmandiagram [inline=(b), horizontal=a to d] {
a[shift={(0.1cm,-0.1cm)}] --[blue, gluon] b [dot]  -- [blue, gluon] c[shift={(-0.2cm,0.2cm)}], 
b  -- [blue, gluon] d[shift={(-0.2cm,-0.1cm)}],
b  -- [blue, gluon] e[shift={(0.1cm,0.2cm)}],
};

\end{figure}
\end{document}

在此处输入图片描述

或者使用 tikz 比例选项,它将保持线宽、点大小等不变:

% !TeX TS-program = lualatex

\documentclass{article}
% lualatex
\usepackage{tikz-feynman}

\begin{document}
\begin{figure}[h!]
\centering

\feynmandiagram [inline=(b), horizontal=a to b] {
a --[fermion] b [dot]  -- [blue, gluon] c, 
b  -- [fermion] d
};
\qquad
\feynmandiagram [inline=(b), horizontal=a to b] {
a --[blue, gluon] b [dot]  -- [ghost] c, 
b  -- [ghost] d
};
\qquad
\feynmandiagram [inline=(b), horizontal=a to b] {
a --[blue, gluon] b [dot]  -- [blue, gluon] c, 
b  -- [blue, gluon] d
};
\qquad
\feynmandiagram [inline=(b), horizontal=a to d,scale=0.95] {
a --[blue, gluon] b [dot]  -- [blue, gluon] c, 
b  -- [blue, gluon] d,
b  -- [blue, gluon] e,
};

\end{figure}
\end{document}

在此处输入图片描述

答案2

您可以使用带有放大或缩小scalerel选项的包\scaleobj。值为.87

\documentclass{article}
% lualatex
\usepackage{tikz-feynman}
\usepackage{scalerel}
\begin{document}
\begin{figure}[h!]
\centering

\feynmandiagram [inline=(b), horizontal=a to b] {
a --[fermion] b [dot]  -- [blue, gluon] c, 
b  -- [fermion] d
};
\qquad
\feynmandiagram [inline=(b), horizontal=a to b] {
a --[blue, gluon] b [dot]  -- [ghost] c, 
b  -- [ghost] d
};
\qquad
\feynmandiagram [inline=(b), horizontal=a to b] {
a --[blue, gluon] b [dot]  -- [blue, gluon] c, 
b  -- [blue, gluon] d
};
\qquad
\scaleobj{.87}{\feynmandiagram [inline=(b), horizontal=a to d] {
a --[blue, gluon] b [dot]  -- [blue, gluon] c, 
b  -- [blue, gluon] d,
b  -- [blue, gluon] e,
};}

\end{figure}
\end{document}

在此处输入图片描述

相关内容