我怎样才能使第 12 个节点对齐,并正确调整其余节点的大小?

我怎样才能使第 12 个节点对齐,并正确调整其余节点的大小?

我正在试验graphdrawingtikz 的库并制作了以下图表:

在此处输入图片描述

如何对齐节点 12,使其与节点 10 的高度相同?此外,为什么节点 10、11、12 比其他节点大?我希望它们具有相同的半径。

我对上图的 MWE(需要用 LuaTeX 进行编译):

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{graphs,graphdrawing}
\usegdlibrary{circular,layered}
\begin{document}
\begin{tikzpicture}
    \graph [simple necklace layout,node distance = 1cm, nodes={circle,draw},layered layout,horizontal= 1 to 3]
{
        1->2->3->1;
        3--4;
        4->5->6->4;
        6--7;
        7->8->9->7;
        9--10;
        10->11->12->10;
        12--[bend right]11;
};
\end{tikzpicture}
\end{document}

答案1

我如何才能将节点 12 对齐,以使其与节点 10 的高度相同?

由于节点距离1cm只需使用节点选项将节点向下移动即可nudge down。下面我使用了5mm

另外,为什么节点 10、11、12 比其他节点大?我希望它们具有相同的半径。

使用minimum width节点选项。下面我使用了1cm

在此处输入图片描述

您可以在以下部分找到更多功能节点位置微调TikZ 文档。

\documentclass[margin=2mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{graphs,graphdrawing}
\usegdlibrary{circular,layered}
\begin{document}
\begin{tikzpicture}
  \graph[
    simple necklace layout,
    node distance = 1cm,
    nodes={circle,draw,minimum width=1cm}, % <-- added here
    layered layout,
    horizontal=1 to 3
  ]
  {
    1->2->3->1;
    3--4;
    4->5->6->4;
    6--7;
    7->8->9->7;
    9--10;
    10->11->12[nudge down=5mm]->10;  % <-- added here
    12--[bend right]11;
  };
\end{tikzpicture}
\end{document}

相关内容