# tikz pgf: drawing state diagrams

I would like to reproduce the following image with tikz pgf, but I am unsure how to do so:

I am terribly sorry for the lackluster drawing, I have little knowledge with tikz pgf because I am new to such a thing. I looked at this website, but could not model my diagram after the ones provided due to the complexity of the diagrams. Could someone help me create such a diagram with the legend? Thank you so much!

EDIT:

\documentclass[tikz, margin=3mm]{standalone}
\usetikzlibrary{arrows.meta}

\begin{document}
\begin{center}
\resizebox{11cm}{7.5cm}{%
\begin{tikzpicture}[
C/.style = {circle, draw, thick, minimum size=3.4em, inner sep=1pt},
arr/.style = {-Triangle, semithick, color=#1, shorten >=2pt, shorten <=2pt},
state/.style={circle, thick, draw=blue!75, fill=blue!20, minimum size=6mm}
]
\node (c0) [C]  at (  0:2.4) {$\frac{1}{1-x}$};
\node (c1) [state]  at ( 60:2.4) {$1-x$};
\node (c2) [C]  at (120:2.4) {$x$};
\node (c3) [state]  at (180:2.4) {$\frac{1}{x}$};
\node (c4) [C]  at (240:2.4) {$1-\frac{1}{x}$};
\node (c5) [C]  at (300:2.4) {$\frac{x}{x-1}$};
%
\foreach \i in {0,2,4}
{
\pgfmathsetmacro{\j}{int(\i+1)}
\draw[arr=teal] (c\i) edge [bend left] (c\j)
(c\j)  to  [bend left] (c\i);
}
\path[draw=teal, very thick]
([shift={(-2.5,0.5)}] c2.west) node[right] {$g(x)=\frac{1}{x}$} -- ++ (-0.5,0);
%
\foreach \i in {1,3,5}
{
\pgfmathsetmacro{\j}{int(Mod(\i+1,6))}
\draw[arr=orange]   (c\i) edge [bend left] (c\j)
(c\j)  to  [bend left] (c\i);
}
\path[draw=orange, very thick]
([shift={(-2.5,0.0)}] c2.west) node[right] {$f(x)=1-x$} -- ++ (-0.5,0);
\end{tikzpicture}
}
\end{center}
\end{document}

I made minor changes to the legend, the size to fit a page and the color. However, one of the blue circles is not uniform (comes from the state/.style), and I am unsure what to do. Thanks!

• something like this with smartdiagram -- tex.stackexchange.com/a/557710/197451 Oct 1 '20 at 0:59
• Thanks! However, is it possible to do without smartdiagram? I tend to like tikz pgf a little more.
– user204915
Oct 1 '20 at 1:22
• What you try so far? Oct 1 '20 at 3:59

\documentclass[tikz, margin=3mm]{standalone}
\usetikzlibrary{arrows.meta}

\begin{document}
\begin{tikzpicture}[
C/.style = {circle, draw, thick, minimum size=3.4em, inner sep=1pt},
arr/.style = {-Triangle, semithick, color=#1, shorten >=2pt, shorten <=2pt}
]
\node (c0) [C]  at (  0:2.4) {$\frac{1}{1-x}$};
\node (c1) [C]  at ( 60:2.4) {$1-x$};
\node (c2) [C]  at (120:2.4) {$x$};
\node (c3) [C]  at (180:2.4) {$\frac{1}{x}$};
\node (c4) [C]  at (240:2.4) {$1-\frac{1}{x}$};
\node (c5) [C]  at (300:2.4) {$\frac{x}{x-1}$};
%
\foreach \i in {0,2,4}
{
\pgfmathsetmacro{\j}{int(\i+1)}
\draw[arr=teal] (c\i) edge [bend left] (c\j)
(c\j)  to  [bend left] (c\i);
}
\path[draw=teal, very thick]
([shift={(-1.5,0.5)}] c2.west) node[right] {$g(x)$} -- ++ (-0.5,0);
%
\foreach \i in {1,3,5}
{
\pgfmathsetmacro{\j}{int(Mod(\i+1,6))}
\draw[arr=orange]   (c\i) edge [bend left] (c\j)
(c\j)  to  [bend left] (c\i);
}
\path[draw=orange, very thick]
([shift={(-1.5,0.0)}] c2.west) node[right] {$f(x)$} -- ++ (-0.5,0);
\end{tikzpicture}
\end{document}

• With the thickness of the larger circumferences the design will, in my humble opinion, take on a better appearance. Oct 1 '20 at 21:37
• @Sebastiano, some details on images, as thickness, I left to OP. I should not be too hard to change them to desired appearance :-) Oct 1 '20 at 23:29
• Zarko thank you very much for your feedback...on my comment. All the best. Oct 2 '20 at 11:18