# Graphs and Dynkin diagrams in latex

I would like to draw the following image using the package dynkin-diagrams:

This is not easy, because the package is only designed to deal with Dynkin diagrams, particularly those which are most frequently encountered. I was not able to change the label locations to match your image without a lot more work. I also did not match the angle you wanted; the package is designed to use angles that display most clearly the symmetries of Dynkin diagrams.

\documentclass{amsart}
\usepackage{dynkin-diagrams}
\makeatletter
\newcommand{\extraNode}[6]%
{%
\dynkinPlaceRootRelativeTo{#1}{#2}{#3}{#4}{#5}
\dynkinIndefiniteSingleEdge{#1}{#2}
\dynkinRootMark{o}{#1}
\dynkinLabelRoot{#1}{#6}
}%
\makeatother
\begin{document}
\begin{dynkinDiagram}[labels={v_p,z,x_r,y_q},mark=o,edge length=1cm]{D}{4}
\extraNode{5}{3}{northeast}{right}{left}{x_1}
\extraNode{6}{4}{southeast}{right}{left}{y_1}
\extraNode{7}{1}{west}{below}{above}{v_1}
\end{dynkinDiagram}
\end{document}

• If it is too big, or too small, change the line edge length=1cm to edge length=.5cm or edge length=1.5cm, etc. – Benjamin McKay Dec 1 '19 at 11:09

Welcome! If you can live with different angles, you can just use the extended Dynkin diagram of E_6.

\documentclass{article}
\usepackage{dynkin-diagrams}
\begin{document}
\dynkin[edge length=.5cm,%
extended,mark=o,%
indefinite edge ratio=3,%
make indefinite edge={2-0},%
make indefinite edge={5-6},%
make indefinite edge={1-3},
labels={x_1,v_1,x_r,v_p,z,y_q,y_1}]{E}{6}
\end{document}


D_4/so(8) would have the angle of your screen shot but you somehow would need to add the inner nodes. If you insist on that angle, maybe plain TikZ is easier.

\documentclass{article}
\usepackage{tikz}
\newcounter{icirc}
\begin{document}
\begin{tikzpicture}[circ/.style={circle,draw,inner sep=2pt,label=above:$#1$,
/utils/exec=\stepcounter{icirc},name=c-\number\value{icirc},
node contents={}},scale=1.5]
\path (-3,0) node[circ=v_1] (-2,0) coordinate (p-1) (-1,0) node[circ=v_p]
(45:3) node[circ=x_1] (45:2) coordinate (p-3) (45:1) node[circ=x_r]
(-45:3) node[circ=y_1] (-45:2) coordinate (p-5) (-45:1) node[circ=y_q]
(0,0) node[circ=z];
\draw foreach \X in {1,3,5} {(c-\X) -- (p-\X) (c-\the\numexpr\X+1) -- (c-7)};
\draw[densely dotted] foreach \X in {1,3,5} {(c-\the\numexpr\X+1) -- (p-\X)};
\end{tikzpicture}
\end{document}


• Thank you very much Schrodinger's cat, but i would like to change the size of the second tikz picture, how can i do it? – Adam Hamam Nov 30 '19 at 11:58
• @AdamHamam Replace 1.5 in scale=1.5 by another factor. – Schrödinger's cat Nov 30 '19 at 14:25
• I appreciate your wise response Schrödinger's cat. Well thanks. – Adam Hamam Nov 30 '19 at 21:35