TikZ 中几乎完全定向图

TikZ 中几乎完全定向图

我想用图表来说明二元关系的性质G), 在哪里={a,b,c,d,e} 且 E={aa,ab,ac,bb,bc,bd…}

通过查阅文档和示例,我尝试了几种不同的方法,但没有一种结果令人满意。最优雅的尝试可能是这个,但它仍然没有提供完整的解决方案:

\tikz \graph [simple] {
    subgraph K_n [->,n=5, clockwise];
    % Redirect edges:
    1 <- 4;
    1 <- 5;
    2 <- 5;
    2 <- 1;
    3 <- 1;
    3 <- 2;
    4 <- 2;
    4 <- 3;
    5 <- 3;
    5 <- 4;
};

我可以吗

  • 将顶点重命名为 a,b,c,d,e,
  • 在每个节点上添加循环来说明反身性?

另一次几乎有效的尝试产生了严重倾斜的图表:

\begin{tikzpicture}[node distance=3cm,gnode/.style={circle,draw,font=\bfseries}]
    \node[gnode](d) {d};
    \node[gnode](c) [right of=d] {c};
    \node[gnode](e) [above left of=d] {e};
    \node[gnode](b) [above right of=c] {b};
    \node[gnode](a) [above right of=e] {a};
    \graph{
        (a) -> {(b),(c)};
        (b) -> {(c),(d)};
        (c) -> {(d),(e)};
        (d) -> {(e),(a)};
        (e) -> {(a),(b)};
        };
    \path
        (a) edge [loop above] node {} (a)
        (b) edge [loop right] node {} (b)
        (c) edge [loop below] node {} (c)
        (d) edge [loop below] node {} (d)
        (e) edge [loop left] node {} (e);
\end{tikzpicture}

答案1

受到 Symbol1 评论的启发,我浏览了Z 画廊其中 Automata 示例提供了几乎完整的解决方案。下面是略微调整的代码和结果图。

\documentclass[]{scrartcl}

\usepackage{tikz}
\begin{document}
\pagestyle{empty}

\begin{tikzpicture}[shorten >=1pt,->]
    \tikzstyle{vertex}=[circle,draw=black!25,minimum size=17pt,inner sep=0pt]

    \foreach \name/\angle/\text in {P-1/234/d, P-2/162/e, P-3/90/a, P-4/18/b, P-5/-54/c}
        \node[vertex,xshift=6cm,yshift=.5cm] (\name) at (\angle:1cm) {$\text$};

    \foreach \from/\to in {1/2,2/3,3/4,4/5,5/1,1/3,2/4,3/5,4/1,5/2}
        { \draw (P-\from) -- (P-\to); }

    \foreach \from/\pos in {1/below,2/left,3/above,4/right,5/below}
        { \path (P-\from) edge[loop \pos] node {} (P-\from); }
\end{tikzpicture}

\end{document}

以图形式表示的关系

相关内容