我怎样才能绘制这个图表?

我怎样才能绘制这个图表?

我正在尝试绘制此图

在此处输入图片描述

我已经画完了主要部分,但不知道剩下的部分该怎么画。你能帮帮我吗?

\documentclass{article}
\usepackage{tikz}
\pagestyle{empty}

\begin{document}
\begin{center}
\begin{tikzpicture}[style=thick]
\draw (18:2cm) -- (90:2cm) -- (162:2cm) -- (234:2cm) --
(306:2cm) -- cycle;
\draw (18:1cm) -- (162:1cm) -- (306:1cm) -- (90:1cm) --
(234:1cm) -- cycle;
\foreach \x in {18,90,162,234,306}{
\draw (\x:1cm) -- (\x:2cm);
\draw (\x:2cm) circle (2pt);
\draw (\x:1cm) circle (2pt);
}
\end{tikzpicture}
\end{center}
\end{document}

答案1

你可以从这里继续。我不明白你的图表的其余部分。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\pagestyle{empty}

\begin{document}
\begin{center}
\begin{tikzpicture}[style=thick,rotate=-72]
\draw (18:2cm)coordinate (A) -- (90:2cm)coordinate (B) -- (162:2cm)coordinate (C) -- (234:2cm)coordinate (D)--(306:2cm)coordinate (E);
\draw (18:1cm) -- (162:1cm) -- (306:1cm) -- (90:1cm) --(234:1cm) -- cycle;
\draw [] (A) to [bend right] (E);\draw [] (A) to [bend left] (E);
\filldraw ($(A)!0.5!(B)$) circle (2pt);
\filldraw ($(B)!0.5!(C)$)coordinate (F) circle (2pt);
\draw [](F)--++(120:0.5)coordinate (G);
\filldraw (G) circle (2pt);
\foreach \x in {18,90,162,234,306}{
\filldraw (\x:1cm) -- (\x:2cm);
\filldraw (\x:2cm) circle (2pt);
\filldraw (\x:1cm) circle (2pt);
}
\end{tikzpicture}
\end{center}
\end{document}

在此处输入图片描述

答案2

如果有人需要的话,最终代码如下:)

    \documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\pagestyle{empty}

\begin{document}
\begin{center}
\begin{tikzpicture}[style=thick,rotate=-72]
\draw (18:2cm)coordinate (A) -- (90:2cm)coordinate (B) -- (162:2cm)coordinate (C) -- (234:2cm)coordinate (D)--(306:2cm)coordinate (E);
\draw (18:1cm)coordinate (A1) -- (162:1cm)coordinate (C1) -- (306:1cm)coordinate (E1) -- (90:1cm)coordinate (B1) --(234:1cm)coordinate (D1) -- cycle;
\draw [] (A) to [bend right] (E);\draw [] (A) to [bend left] (E);
\filldraw ($(A)!0.5!(B)$) circle (2pt);
\filldraw ($(D)!0.5!(E)$) circle (2pt);
\filldraw ($(A)!0.5!(A1)$) circle (2pt);
\filldraw ($(E1)!0.5!(E)$) circle (2pt);
\draw [](B)--++(120:0.5)coordinate (G);
\draw [](C)--++(120:0.5)coordinate (H);
\draw [](D)--++(150:0.5)coordinate (F);
\draw [](C1)--++(120:0.5)coordinate (G1);
\draw [](D1)--++(120:0.5)coordinate (H1);
\draw [](B1)--++(120:0.5)coordinate (F1);
\draw [](A1)--++(120:0.5)coordinate (X1);
\draw [](E1)--++(210:0.5)coordinate (Y1);

\filldraw (G) circle (2pt);
\filldraw (H) circle (2pt);
\filldraw (F) circle (2pt);
\filldraw (G1) circle (2pt);
\filldraw (H1) circle (2pt);
\filldraw (F1) circle (2pt);
\filldraw (X1) circle (2pt);
\filldraw (Y1) circle (2pt);



\foreach \x in {18,90,162,234,306}{
\filldraw (\x:1cm) -- (\x:2cm);
\filldraw (\x:2cm) circle (2pt);
\filldraw (\x:1cm) circle (2pt);
}
\end{tikzpicture}
\end{center}
\end{document}

答案3

使用 PSTricks 的纯粹乐趣解决方案。

\documentclass[pstricks]{standalone}
\usepackage{pst-plot,pst-node}

\begin{document}
\begin{pspicture}[plotpoints=6,showpoints,arcangle=45,dotscale=3,nrot=:U](-5,-5)(5,5)
    \curvepnodes{0}{360}{2 t 18 add PtoC}{Q}
    \pspolygon(Q0)(Q2)(Q4)(Q1)(Q3)
    \curvepnodes{0}{360}{4 t 18 add PtoC}{P}
    \psline(P4)(P0)(P1)(P2)(P3)
    \multido{\i=0+1}{5}{\pcline(Q\i)(P\i)}
    \pcarc(P3)(P4)\pcarc(P4)(P3)
    \pcline(P0)(P1)\ncput{\psline(0,0)(0,-1)}
    \pcline(P0)(P4)\ncput{\psline(0,0)(0,0)}
\end{pspicture}
\end{document}

在此处输入图片描述

相关内容