A more straight forward approach may be using the graph
library, (requires LuaLaTeX, though). Here is the code using graph
library:
\documentclass[tikz,border=5]{standalone}
\usetikzlibrary{graphs,graphdrawing,arrows.meta}
\usegdlibrary{circular}
\begin{document}
\tikz[>=Stealth]\graph[simple necklace layout, nodes={circle,minimum size=.7cm,draw}, node sep=1cm]{
1,2,6,4,5,3;
1->[xshift=1pt,yshift=2pt]3 -> 2, 3 ->[xshift=-1pt,yshift=-2pt]1 -> 2;
3 -> 5 -> 6 ->[xshift=-1pt,yshift=-2pt] 4 ->[xshift=1pt,yshift=-2pt]5, 5 ->[xshift=-1pt,yshift=2pt] 4 ->[xshift=1pt,yshift=2pt] 6;
};
\end{document}
This outputs:
Another possibility could be using a matrix of nodes
as follows:
\documentclass[tikz,border=5]{standalone}
\usetikzlibrary{matrix,arrows.meta}
\begin{document}
\begin{tikzpicture}[>=Stealth,->,line width=.7pt]
\matrix [matrix of math nodes,
column sep={1.5cm,between origins},
row sep={2.2cm,between origins},
nodes={circle, draw, minimum size=1cm}]
{
& |(1)| 1 & & |(2)| 2 & \\
& & |(3)| 3 & \\
& |(6)| 6 & & |(5)| 5 & \\
& & |(4)| 4 & \\};
\draw (1)--(2);
\draw (3)--(2);
\draw[transform canvas={xshift=2pt,yshift=2pt},shorten <= -1pt] (3)--(1);
\draw[transform canvas={xshift=-2pt,yshift=-2pt},shorten <= -1pt] (1)--(3);
\draw (3) -- (5);
\draw (5) -- (6);
\draw[transform canvas={xshift=2pt,yshift=-2pt},shorten >= -1pt] (4) -- (5);
\draw[transform canvas={xshift=-2pt,yshift=2pt},shorten >= -1pt] (5) -- (4);
\draw[transform canvas={xshift=2pt,yshift=2pt},shorten <= -1pt] (4) -- (6);
\draw[transform canvas={xshift=-2pt,yshift=-2pt},shorten <= -1pt] (6) -- (4);
\end{tikzpicture}
\end{document}
which now gives:
This is a possible solution, use of looseness=xx
and bend left=xx
, For the wavy line and arrow, here a style called snake it
is defined,
Code
\usepackage[margin=1in]{geometry}
\usepackage{amsmath}% http://ctan.org/pkg/stackrel
\usepackage{tikz,siunitx}
\usetikzlibrary{matrix,positioning,calc}
\usetikzlibrary{decorations.pathmorphing}
\tikzset{snake it/.style={-stealth,
decoration={snake,
amplitude = .4mm,
segment length = 2mm,
post length=0.9mm},decorate}}
\begin{document}
\[
\begin{tikzpicture}
\matrix (m) [matrix of nodes, row sep=3em,
column sep=3em, text height=1.5ex, text depth=0.25ex]
{ B & C \\
$B'$ & $C'$ \\ };
\path[->]
(m-1-1) edge node[above] {$g$} (m-1-2)
edge node[left] {$\beta$} (m-2-1)
edge [bend left=90,looseness=2,snake it] (m-2-2)
edge [bend right=90,looseness=2] (m-2-2);
\path[->]
(m-1-2) edge node[right] {$\gamma$} (m-2-2);
\path[->]
(m-2-1) edge node[below] {$g'$} (m-2-2);
\end{tikzpicture}
\]
\end{document}
Best Answer