我想在一个圆圈周围放置 p 个间距均匀的节点。
我想使用文档类[报告]绘制下面的图片。
编辑:我到目前为止所做的
\documentclass[a4paper,leqno,11pt]{amsart}
\usepackage{amsfonts,amssymb,verbatim,amsmath,amsthm,latexsym,textcomp,amscd}
\usepackage{latexsym,amsfonts,amssymb,epsfig,verbatim}
\usepackage{amsmath,amsthm,amssymb,latexsym,graphics,textcomp}
%\usepackage[all,2cell,dvips]{xy}
\usepackage{graphicx}
\usepackage{color}
\usepackage{url}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\def \n {5}
\def \radius {1.5cm}
\def \margin {3}
\foreach \s in {1,...,\n} {%
\node [anchor=center] at ({360/\n * (\s-1)}:\radius+ 1){$g^{\s}$};
\filldraw[black] ({360/\n * (\s-1)}:\radius) circle (1pt) ;
\node [anchor=center] at ({360/\n * (\s-1)}:\radius+0.3cm ){$g^{\s}$};
\draw[>=latex] ({360/\n * (\s-1)+ \margin}:\radius)
arc({360/\n * (\s-1)+\margin}:{360/\n * (\s)-\margin}:\radius);
}
\end{tikzpicture}
\end{document}
答案1
这可以在一个 中完成\draw
。
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\def \n {20}
\def \radius {3}
\draw circle(\radius)
foreach\s in{1,...,\n}{
(-360/\n*\s:-\radius)circle(.4pt)circle(.8pt)circle(1.2pt)
node[anchor=-360/\n*\s]{$g^{\s}\ifnum\s=\n\relax=e\fi$}
};
\end{tikzpicture}
\end{document}
省略版本
\begin{tikzpicture}
\def \n {20}
\def \radius {3}
\draw circle(\radius)(0:-\radius)circle(.4pt)circle(.8pt)circle(1.2pt)
foreach\s in{0,...,7}{
({-360/\n*(\s-1)}:-\radius)circle(.4pt)circle(.8pt)circle(1.2pt)
node[anchor={-360/\n*(\s-1)}]{$\ifcase\s\relax g^{p-1}=g^{-1}\or g^p=e\else g^{\pgfmathparse{int(\s-1)}\pgfmathresult}\fi$}
}
foreach\s in{9,...,\n}{
({-360/\n*(\s-2)}:-\radius)
node[anchor={-360/\n*(\s-2)}]{$\cdot$}
};
\end{tikzpicture}