enter image description here

This is what I've got so far:


\draw[color=blue] (1,0) circle (1.5);
\draw (0,0) node[circle, inner sep=2pt, fill=black, label={above:{$x$}}] (x)  {};
\draw (2,0) node[circle, inner sep=2pt, fill=black, label={above:{$y$}}] (y) {};
\draw [->] (0,0) -- (1.8,0);
\draw [->] (y) .. controls +(-1,-1) .. (0,-0.1);


I don't know how to write the equal sign and proceed to the next two pictures.

  • One way: You can include the equal sign in a node. Load \usetikzlibrary{positioning}, add \begin{tikzpicture}[node distance=1.5cm] and then \node[left=of y, font=\Huge] {=};, but you could also use chains. – Alenanno Jan 8 '16 at 17:29
  • For a beginner, ignore all that positioning stuff and just put the \node[font=\huge]{=} where it looks good. If the font isn't big enought, there is \scalebox or \resizebox from the graphicx package. – John Kormylo Jan 8 '16 at 17:49
  • @JohnKormylo positioning is hard, but \scalebox isn't? :P – Alenanno Jan 8 '16 at 19:05

As @Alenanno said you can just increase size of font with font=\Huge.

You can create style for nodes and arrows to simplify code



Circle/.style={circle, inner sep=2.5pt, fill=black, label={above:{$#1$}}},

\begin{tikzpicture}[thick,node distance=1cm]
\draw (0,0) node[Circle=x] (x) {};
\draw (2,0) node[Circle=y] (y) {};
\draw [->,Arrows] (x) -- (y);
\draw [->,Arrows] (y) .. controls +(-1,-1)..(x);
\node [right=of y, font=\Huge](z) {\lower1.3ex\hbox{=}};
\node [right=of z, Circle=x](t) {};
\draw [->,Arrows] (t) --+ (2,0)node(e)[label={above:{$y$}}]{};
\node [right=of e, font=\Huge](f) {\lower1.3ex\hbox{$\ast$}};
\node [right=of f,label={above:{$x$}}](g){};
\node [right=2 of g, Circle=y](h){};
\draw [->,Arrows] (h) .. controls +(-1,-1)..(g);
\draw (1,0) circle (1.5);
\draw (t)+(1,-1.5) arc (270:90:1.5cm)--cycle;
\draw (h)+(-1,-1.5) arc (-90:90:1.5cm)--cycle;


enter image description here


Similarly as in answer of @salimbou, with different way to draw arrows, arc and with use of absolute coordinates:

          radius = 8mm,
    arrow/.style = {shorten <=1.2mm, shorten >=1.2mm, ->}
% 1
\fill[black] (-0.4,0) circle (1mm) node[above] {$x$};
\fill[black] (+0.4,0) circle (1mm) node[above] {$y$};
\draw [arrow] (-0.4,0) -- (0.4,0);
\draw [arrow] (0.4,0) to [out=240,in=300,looseness=2.4] (-0.4,-0);
\draw[color=blue] (0,0) circle (0.8);
% 2
\node at (-1.2,-0.07) {\huge$=$};
\fill[black] (-0.4,0) circle (1mm) node[above] {$x$};
\node[above] at (+0.4,0) {$y$};
\draw [arrow] (-0.4,0) -- (0.4,0);
\draw[color=blue] (0,0) -- + (0,0.8) arc[start angle=90,end angle=270] -- cycle;
% 3
\node at (-1.1,-0.07) {\huge$*$};
\fill[black] (0.4,0) circle (1mm) node[above] {$y$};
\node[above] at (-0.4,0) {$y$};
\draw [arrow] (0.4,0) to [out=240,in=300,looseness=2.4] (-0.4,-0);
\draw[color=blue] (0,0) -- + (0,0.8) arc[start angle=90,end angle=-90] -- cycle;

enter image description here

  • You need \begin{document}. – cfr Jan 9 '16 at 2:04
  • @cfr, thank you for pointing me on error, its happen because I upload code in two parts ... – Zarko Jan 9 '16 at 2:42

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.