tikz多部分图节点排列

tikz多部分图节点排列

我对 tikz 还很陌生(并在 stackexchange 上发帖)。我试图绘制一个有 27 个顶点的图形,由 9 个独立的集合组成,每个集合有 3 个顶点。所有其他边都包括在内。

使用下面的代码,我得到如下结果:

在此处输入图片描述

理想情况下,我希望将 9 个集合排列在 3x3 网格中(这样 9 个集合中的每个顶点都形成一个空三角形,并且有 9 个这样的三角形)。但我很乐意让节点间隔得更远,以便所有边缘都可见。

谢谢你!

\documentclass[10pt,a4paper,final]{report}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tikz}
\usetikzlibrary{graphs}

\begin{document}
\begin{tikzpicture}
    \graph [math nodes, nodes={circle, draw}] {
    {1, c, c^2} -- [complete bipartite] {a^2, a^2c, a^2c^2};
    {1, c, c^2} -- [complete bipartite] {a,ac,ac^2};
    {1, c, c^2} -- [complete bipartite] {ab,abc,abc^2};
    {1, c, c^2} -- [complete bipartite] {ab^2,ab^2c,ab^2c^2};
    {1, c, c^2} -- [complete bipartite] {b,bc,bc^2};
    {1, c, c^2} -- [complete bipartite] {a^2b^2,a^2b^2c,a^2b^2c^2};
    %
    {a^2, a^2c, a^2c^2} -- [complete bipartite] {a,ac,ac^2};
    {a^2, a^2c, a^2c^2} -- [complete bipartite] {ab,abc,abc^2};
    {a^2, a^2c, a^2c^2} -- [complete bipartite] {ab^2,ab^2c,ab^2c^2};
    {a^2, a^2c, a^2c^2} -- [complete bipartite] {b,bc,bc^2};
    {a^2, a^2c, a^2c^2} -- [complete bipartite] {a^2b^2,a^2b^2c,a^2b^2c^2};
    %
    {a,ac,ac^2} -- [complete bipartite] {ab,abc,abc^2};
    {a,ac,ac^2} -- [complete bipartite] {ab^2,ab^2c,ab^2c^2};
    {a,ac,ac^2} -- [complete bipartite] {b,bc,bc^2};
    {a,ac,ac^2} -- [complete bipartite] {a^2b^2,a^2b^2c,a^2b^2c^2};
    %
    {ab,abc,abc^2} -- [complete bipartite] {ab^2,ab^2c,ab^2c^2};
    {ab,abc,abc^2} -- [complete bipartite] {b,bc,bc^2};
    {ab,abc,abc^2} -- [complete bipartite] {a^2b^2,a^2b^2c,a^2b^2c^2};
    %
    {ab^2,ab^2c,ab^2c^2} -- [complete bipartite] {b,bc,bc^2};
    {ab^2,ab^2c,ab^2c^2} -- [complete bipartite] {a^2b^2,a^2b^2c,a^2b^2c^2};
    %
    {a^2b^2,a^2b^2c,a^2b^2c^2} -- [complete bipartite] {b,bc,bc^2};
    };
  \end{tikzpicture}
\end{document}

相关内容