I want to draw a simple self-energy two-loop graph such as

enter image description here

using TikZ-Feynman. I have a problem with the automatic alignment of the fermion lines. I have tried this:

\feynmandiagram[inline=(a), layered layout, horizontal=a to f] 
a--[plain, in=180, out=0, relative=true] b --[photon, half left] e --[plain, in=180, out=0, relative=true] f,
b--[plain, in=180, out=0, relative=true] c -- [photon, half left] d -- [plain, in=180, out=0, relative=true] e,
c -- [plain, in=180, out=0, relative=true] d,

Trying to force each vertex angle, but it gives me this:

enter image description here

Which is really bad. Is there some way to achieve this straight line without enforcing anything? Thank you!

1 Answer 1


I think that is one of the cases of the "When the Algorithm Isn’t Enough" category, but you can of course place the vertices manually.

\vertex (a);
\vertex[right=1.5cm of a] (b);
\vertex[right=1.5cm of b] (c);
\vertex[right=1.5cm of c] (d);
\vertex[right=1.5cm of d] (e);
\vertex[right=1.5cm of e] (f);
\diagram*{(a)--[plain] (f),
(b) -- [photon, half left] (e), 
(c) -- [photon, half left] (d)

enter image description here

  • Okay thank you so much! I suppose I have no other choice than keep with manual placement :)
    – Txordi
    Jul 20, 2018 at 9:01

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .