在 TiKZ 中创建此图像

在 TiKZ 中创建此图像

有人能帮我用 TiKZ 创建这个图像吗?在此处输入图片描述

我设法画出了圆圈等,但它们的位置不正确,我还没有弄清楚如何像我在提供的图像中画的那样画出线条。非常感谢您帮助学习如何使用 TiKZ!

答案1

您提到您可以画出圆圈。不知道为什么您画不出线条。

这是一个可以让你完成你想要做的事情的例子:

\documentclass[border=6pt]{standalone}

\usepackage{tikz}
\usetikzlibrary{calc}

\def\aeRadiusA{2\aes}
\def\aeRadiusB{1.15\aes}
\def\aeRadiusC{1\aes}

\begin{document}

\def\aes{in*0.75}%%
\begin{tikzpicture}
  \coordinate (A) at (0,0);
  \coordinate (B) at ($(A)+(30:4\aes)$);
  \coordinate (C) at ($(B)+(-90:2.5\aes)$);

  \draw[line width=2pt,gray!60,postaction={draw,blue,dashed,line width=1.4pt}] (A) circle (\aeRadiusA);

  \draw (B) circle (\aeRadiusB);
  \draw (C) circle (\aeRadiusC);

  \coordinate (A1a) at ($(A)+(-20:\aeRadiusA*0.75)$);
  \coordinate (C1a) at ($(C)+(90+20:\aeRadiusC*0.75)$);
  \coordinate (A1b) at ($(A1a)+(3pt,2pt)$);
  \coordinate (C1b) at ($(C1a)+(0pt,-2pt)$);

  \coordinate (A2a) at ($(A)+(30:\aeRadiusA*0.65)$);
  \coordinate (B2a) at ($(B)+(140:\aeRadiusB*0.65)$);
  \coordinate (A2b) at ($(A2a)+(15pt,4pt)$);
  \coordinate (B2b) at ($(B2a)+(-4pt,3pt)$);

  \foreach \myA/\myB in {A1/C1,A2/B2}
  {
    \draw[blue] (\myA a) -- (\myB a);
    \draw       (\myA b) -- (\myB b);
  }



  \node[anchor=north west] at (A) {14-graph};
  \node                    at (C) {3-graph};

\end{tikzpicture}

\end{document}

在此处输入图片描述

请注意,我使用极坐标来放置每个图片内的点。由于我对每个圆都使用了一个控制序列,因此我可以轻松重新缩放每个圆的半径,而不必担心连接内部的线段的端点是否仍在各自的圆内。

至于事情进展的精确度,你只需要不断尝试,直到它足够接近你想要的结果。

相关内容