You could use the TikZ polygon shapes in a \foreach loop. Add color and styles as you like.
Key points are
- regular polygon shape of the
shapes.geometric library
- relative positioning of the
positioning library
- remember the last node, using characters a, b, ... for node names
- using the south anchor for positioning and anchoring at the same base line
\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric, positioning}
\begin{document}
\begin{tikzpicture}
\node (a) {};
\foreach \i [remember=\i as \lastnode (initially a),
count = \vertices from 3] in {b,...,i}
\node [regular polygon, regular polygon sides=\vertices,
minimum size=1cm, draw, right = 1.3cm of \lastnode.south,
anchor=south] (\i) {};
\end{tikzpicture}
\end{document}

And as I now understand, you may like to have the polygon to share one side of constant length, you could do it like above, keeping the south anchor but omitting relative positioning and letting TikZ calculate the width by:
minimum size = 5cm/(2*sin(180/\vertices))
Full code then:
\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric}
\begin{document}
\begin{tikzpicture}
\node (a) {};
\foreach \i [remember=\i as \lastnode (initially a),
count = \vertices from 3] in {b,...,i}
\node [regular polygon, regular polygon sides=\vertices, draw,
minimum size = 5cm/(2*sin(180/\vertices)), anchor=south] (\i) {};
\end{tikzpicture}
\end{document}
