我如何复制 J.Stembridge 论文中的晶体图?

我如何复制 J.Stembridge 论文中的晶体图?

我需要在 pp.4822 中包含 3 个(2 色)有向图

John R. Stembridge 简单晶格晶体的局部表征 美国数学会志 355 (2003), 4807-4823 http://www.ams.org/journals/tran/2003-355-12/S0002-9947-03-03042-3/

在此处输入图片描述

我首先尝试了 Graphviz。例如,左侧图结构编码为

digraph crystal {
graph [ labelloc = t label = "Crystal graph" ]
B_0_0 [ label="" ]
B_1_0 [ label="" ]
B_1_1 [ label="" ]
B_2_0 [ label="" ]
B_2_1 [ label="" ]
B_3_0 [ label="" ]
B_3_1 [ label="" ]
B_3_2 [ label="" ]
B_4_0 [ label="" ]
B_4_1 [ label="" ]
B_4_2 [ label="" ]
B_5_0 [ label="" ]
B_5_1 [ label="" ]
B_6_0 [ label="" ]
B_6_1 [ label="" ]
B_7_0 [ label="" ]
B_0_0 -> B_1_0 [ label=1 ]
B_0_0 -> B_1_1 [ label=2 ]
B_1_0 -> B_2_0 [ label=2 ]
B_1_1 -> B_2_1 [ label=1 ]
B_2_1 -> B_3_0 [ label=2 ]
B_2_0 -> B_3_1 [ label=2 ]
B_2_1 -> B_3_2 [ label=1 ]
B_3_0 -> B_4_0 [ label=1 ]
B_3_2 -> B_4_0 [ label=2 ]
B_3_1 -> B_4_1 [ label=1 ]
B_3_1 -> B_4_2 [ label=2 ]
B_4_2 -> B_5_0 [ label=1 ]
B_4_1 -> B_5_0 [ label=2 ]
B_4_0 -> B_5_1 [ label=2 ]
B_5_0 -> B_6_0 [ label=1 ]
B_5_1 -> B_6_1 [ label=2 ]
B_6_1 -> B_7_0 [ label=1 ]
B_6_0 -> B_7_0 [ label=2 ]
}

但我无法像 Stembridge 的论文那样“简洁”、“紧凑”、“最低限度”地显示结果。

Graphviz 的方法似乎不太好。有什么好方法可以复制 Stembridge 的晶体图并将其作为图表插入到论文中?例如,tikz 似乎具有很好的绘制图形的功能。

提前致谢。

答案1

希望此代码能帮助您入门

\documentclass[border = 5pt, tikz]{standalone}

\usetikzlibrary{positioning}
\usetikzlibrary{arrows}

\begin{document}
\begin{tikzpicture}[
  every node/.style = {
    draw, circle, 
    inner sep = 1pt
  },
  thick arrow/.style = {
    ->, -latex, 
    ultra thick
  },
  thin arrow/.style = {
    ->, -stealth', 
  },
  ]

  % node L<i> <j> means <j>-th node of the <i>-th layer 
  \node (L0) {};

  \node[below left = of L0] (L1 0){};
  \node[below right = of L0] (L1 1){};

  \node[below = of L1 0] (L2 0){};
  \node[below = of L1 1] (L2 1){};

  \node[below left = of L2 0] (L3 0){};
  \node[below right = of L2 0] (L3 1){};
  \node[below right = of L2 1] (L3 2){};

  \node[below left = of L3 1] (L4 0){};
  \node[below left = of L3 2] (L4 1){};
  \node[below right = of L3 2] (L4 2){};

  \node[below right = of L4 0] (L5 0){};
  \node[below right = of L4 1] (L5 1){};

  \node[below = of L5 0] (L6 0){};
  \node[below = of L5 1] (L6 1){};

  \node[below right = of L6 0, label = {[below = 5pt]$x$}] (L7){};

 % edges
  \draw[thick arrow] (L0) -- (L1 0);
  \draw[thin arrow] (L0) -- (L1 1);

  \draw[thin arrow] (L1 0) -- (L2 0);
  \draw[thick arrow] (L1 1) -- (L2 1);

  \draw[thick arrow] (L2 0) -- (L3 0);
  \draw[thin arrow] (L2 0) -- (L3 1);
  \draw[thick arrow] (L2 1) -- (L3 2);

  \draw[thin arrow] (L3 0) -- (L4 0);
  \draw[thick arrow] (L3 1) -- (L4 0);
  \draw[thick arrow] (L3 2) -- (L4 1);
  \draw[thin arrow] (L3 2) -- (L4 2);

  \draw[thick arrow] (L4 0) -- (L5 0);
  \draw[thin arrow] (L4 1) -- (L5 1);
  \draw[thick arrow] (L4 2) -- (L5 1);

  \draw[thick arrow] (L5 0) -- (L6 0);
  \draw[thin arrow] (L5 1) -- (L6 1);

  \draw[thin arrow] (L6 0) -- (L7);
  \draw[thick arrow] (L6 1) -- (L7);


\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容