帮助使用 dynkin-diagrams 或 tikz 绘制简单的 Dynkin 图

帮助使用 dynkin-diagrams 或 tikz 绘制简单的 Dynkin 图

我在按自己的想法绘制 Dynkin 图时遇到了一些麻烦。我编写了以下代码。但它并没有实现我想要的功能。

\begin{dynkinDiagram}[edge length=2cm, edge/.style={ultra thick}, root radius=.2cm]{A}{o.ooo}
\node[below=.2cm] at (root 3) {$\beta\perp\alpha+\gamma$}; 
\node[below=.2cm] at (root 4) {$\gamma$}; 
\end{dynkinDiagram}

我列出了一些问题:(1)节点周围的圆圈不是。(2)和ultra thick之间的虚线也不是。(3)和处的标签不是水平对齐。(4)我想在到(标记为)的括号以及到(标记为)的括号上生成一个括号,我尝试了或,但产生了致命错误并停止了编译。(root 1)(root 2)ultra thick(root 3)(root 4)(root 1)(root 2)$\alpha'$(root 1)(root 3)$\alpha$\dynkinBrace\dynkinBrace*

我很乐意使用tikz而不是包dynkin-diagrams。但是tikz,我更加迷茫了。我无法在那里生成代码来解释这个想法。

最后,我想将图片居中并将其包裹在图形环境中。我不确定\begin{dynkinDiagram}...\end{dynkinDiagram}代码示例是否可以做到这一点。从包dynkin-diagrams生成的微型尺寸可以看出,这些图表应该内联使用。但我想要一个真正的图形。

谢谢你!

答案1

像这样?

在此处输入图片描述

\documentclass[tikz,border=5mm]{standalone}
\usetikzlibrary{decorations.pathreplacing}
\begin{document}
\begin{tikzpicture}[ultra thick]
\def\a{1}
\tikzset{dynkin/.style={circle,draw,minimum size=2mm}}
\path
(0,0)      node[dynkin] (N1) {} 
++(0:\a)   coordinate (A) ++(0:\a) coordinate (B)
++(0:\a)   node[dynkin] (N2) {} 
++(0:2*\a) node[dynkin] (N3) {} +(-90:.5) node{$\beta\perp\alpha+\gamma$}
++(0:2*\a) node[dynkin] (N4) {} +(-90:.5) node{$\gamma$};

\draw[dashed] (A)--(B);
\draw (N1)--(A) (B)--(N2)--(N3)--(N4);
\draw[decorate,decoration={brace,raise=5mm},blue,thick]
(N2.center)--(N1.center) node[midway,below=6mm]{$\alpha'$};
\draw[decorate,decoration={brace,raise=5mm},blue,thick]
(N1.center)--(N3.center) node[midway,above=6mm]{$\alpha$};
\end{tikzpicture}
\end{document}

答案2

两个 Dynkin 图相互叠放 将您的代码与我的代码进行比较:

\documentclass{amsart}
\usepackage{dynkin-diagrams}
\begin{document}
\begin{dynkinDiagram}[edge length=2cm, edge/.style={ultra thick}, root radius=.2cm]{A}{o.ooo}
\node[below=.2cm] at (root 3) {$\beta\perp\alpha+\gamma$}; 
\node[below=.2cm] at (root 4) {$\gamma$}; 
\end{dynkinDiagram}

\begin{dynkinDiagram}[indefinite edge/.style={ultra thick,densely dashed},o/.style={ultra thick,fill=white,draw=black},edge length=2cm, edge/.style={ultra thick}, root radius=.2cm]{A}{o.ooo}
\node[below=.2cm] at (root 3) {$\beta\perp\alpha+\gamma$}; 
\node[below=.2cm] at (root 4) {$\gamma$}; 
\dynkinBrace*[\alpha]{1}{3}
\dynkinBrace[\alpha']{1}{2}
\end{dynkinDiagram}
\end{document}

相关内容