Tikz で複数の円を描く

Tikz で複数の円を描く

を中心とした複数の円で単位円を描きたいです(cos(x),sin(x))

\begin{tikzpicture}
\draw (0,0) circle (2cm);

\coordinate (a) at (2;10);

\draw (a) circle (0.3cm);

\end{tikzpicture}

極座標を使用して点を定義し、円を描くにはどうすればよいですか(2cos(10),2sin(10))?

答え1

極座標がなくても、これは次のように簡単に実行できます。

\documentclass[border={10}]{standalone}

\usepackage{tikz}  

\begin{document}

\def \f {1.0}

\begin{tikzpicture}

\foreach \a in {0, 30, ..., 350 }
        \draw ({\f*cos(\a)}, {\f*sin(\a)}) circle (0.2cm);

\end{tikzpicture}

\end{document}

結果は

ここに画像の説明を入力してください

答え2

極座標でもこれを行うことができます:)

 \draw (\a:1) circle (0.2cm);

構文は です(<angle>:<radius>)。出力は

ここに画像の説明を入力してください

% arara: pdflatex
% !arara: indent: {overwrite: yes}
\documentclass[border=3mm]{standalone}
\usepackage{tikz}  
\begin{document}

\begin{tikzpicture}
 \foreach \a in {0, 30, ..., 350 }
 \draw (\a:1) circle (0.2cm);
\end{tikzpicture}

\end{document}

あるいは、graphsライブラリを使用すると、

\graph[nodes={draw,circle,minimum width=.2cm},
  clockwise,
  radius=1cm,
  empty nodes,
  n=12]{subgraph I_n};

完全な MWE は次のとおりです。

% arara: pdflatex
% !arara: indent: {overwrite: yes}
\documentclass[border=3mm]{standalone}
\usepackage{tikz}  
\usetikzlibrary{graphs}
\usetikzlibrary{graphs.standard}

\begin{document}

\begin{tikzpicture}
 \graph[nodes={draw,circle,minimum width=.2cm},clockwise,radius=1cm,empty nodes,n=12]{subgraph I_n};
\end{tikzpicture}

\end{document}

参考:tikz が提供する標準サブグラフの完全なリストはどこで見つかりますか?

答え3

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

\def\N{10}
\def\offsetAngle{19}
\def\radius{5mm}

\begin{document}
\begin{pspicture}(-4,-4)(4,4)
    \curvepnodes[plotpoints=\N]{0}{360}{2 t \offsetAngle\space add PtoC}{X}
    \foreach \i in {0,...,\the\numexpr\Xnodecount-1\relax}{\pscircle(X\i){\radius}}
\end{pspicture}
\end{document}

の直感に反する名前は、\Xnodecount実際にはゼロベースのノード配列 の最後のインデックスですX。曲線が閉じた曲線である場合、 から 1 を減算して(上記の例に基づいて) 実際には に等しい を\Xnodecount削除する必要があります。X9X0

ここに画像の説明を入力してください

関連情報