5

I'd like to place p evenly-spaced nodes around a circle.

I want to draw the following picture with using document class [report].

enter image description here

Edit: What I have done so far,

\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}
CarLaTeX
  • 62,716
math
  • 179
  • 3
    This is a do-it-for-me question. Please show what you've got so far and then ask a specific question. – TeXnician Mar 26 '17 at 17:33
  • I just can draw a circle in tikz. – math Mar 26 '17 at 17:36
  • 2
    See http://tex.stackexchange.com/questions/136357/drawing-a-regular-polygon-encompassed-by-a-circle, just don't draw the polygon. – Torbjørn T. Mar 26 '17 at 17:36
  • Sorry sir. I can't do it by myself. Can you please do it for me? – math Mar 26 '17 at 18:31
  • 1
    Welcome to TeX.SX. Questions about how to draw specific graphics that just post an image of the desired result are really not reasonable questions to ask on the site. Please post a minimal compilable document showing that you've tried to produce the image and then people will be happy to help you with any specific problems you may have. See minimal working example (MWE) for what needs to go into such a document. – Thruston Mar 26 '17 at 18:33
  • 1
    Perhaps this post might help you: http://tex.stackexchange.com/questions/145379/how-do-i-place-nodes-around-a-circle-in-tikz. – God bless Mar 26 '17 at 19:20

1 Answers1

7

This can be done in a single \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}

ellipsis version

\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}

Symbol 1
  • 36,855
  • You can probably replace circle(.4pt)circle(.8pt)circle(1.2pt) with node[fill,circle, inner sep=1pt]{}. – Kpym Mar 28 '17 at 20:25