Wie zeichne ich diese Kurve in TIKZ?

Wie zeichne ich diese Kurve in TIKZ?

Ich brauche dieses Bild in besserer Qualität für eine Arbeit, bin aber mit Tikz nicht so gut, wie ich es gerne hätte.

Ich habe die Kreise, Punkte und Pfeile teilweise konstruiert, aber wie ich mir vorgestellt habe, kann ich die Details nicht umsetzen, wie etwa, dass der Kreis an einem der Knoten teilweise gelöscht ist. Oder die seltsamen Kurven mit den Pfeilen T_T.

Die Klasse des von mir verwendeten Dokuments ist eine Variation der Artikelklasse.

Dies ist, was ich bisher getan habe:

\documentclass{article}
%Packages for the TIKZ%
\usepackage{xcolor}
\definecolor{azul}{RGB}{187,233,255}
\usepackage{tikz}
\usetikzlibrary{arrows,positioning} 
\tikzset{
    %Define standard arrow tip
    >=stealth',
    % Define arrow style
    pil/.style={
           ->,
           thick,
           shorten <=2pt,
           shorten >=2pt,}
}

\begin{document}

\begin{tikzpicture}
\draw[thick,->] (0,0) -- (5,0) node[anchor=north west] {x};
\draw[thick,->] (0,0) -- (0,5) node[anchor=south east] {y};
\filldraw[azul, draw=black, thick] (2.5,2.5) circle (2cm);
\filldraw[white, draw=black, thick] (2.5,2.5) circle (0.75cm);
\filldraw[black] (2.5,2.5) circle (3pt) node [anchor= south] {$\delta$};
\filldraw[black] (2.11,2.05) circle (3pt);
\draw[thick,->] (2.5,2.5) -- (3.03,3.03);
\draw[thick] (2.5,2.5) -- (1.8,3.07) node [anchor= south east] {$\epsilon$};
\draw[thick,->] (1.3,3.50) -- (0.93,3.78);
\end{tikzpicture}

\end{document}

Und ich bekomme Folgendes: Bildbeschreibung hier eingeben

Das Bild, das ich nachzubilden versuche, ist dieses:

Bildbeschreibung hier eingeben

Antwort1

Als Ausgangspunkt und unter Verwendungdiese nette AntwortausHenri Menkeund nur für das linke Bild. Die Koordinaten müssen entsprechend der gewünschten Kurvenform manuell eingestellt werden.

\documentclass[margin=3mm]{standalone}
%Packages for the TIKZ%
\usepackage{xcolor}
\definecolor{azul}{RGB}{187,233,255}
\usepackage{tikz}
\usetikzlibrary{arrows,positioning} 
\usetikzlibrary{decorations.markings}
\tikzset{
    %Define standard arrow tip
    >=stealth',
    % Define arrow style
    pil/.style={
           ->,
           thick,
           shorten <=2pt,
           shorten >=2pt,}
}
\tikzset{
    set arrow inside/.code={\pgfqkeys{/tikz/arrow inside}{#1}},
    set arrow inside={end/.initial=>, opt/.initial=},
    /pgf/decoration/Mark/.style={
        mark/.expanded=at position #1 with
        {
            \noexpand\arrow[\pgfkeysvalueof{/tikz/arrow inside/opt}]{\pgfkeysvalueof{/tikz/arrow inside/end}}
        }
    },
    arrow inside/.style 2 args={
        set arrow inside={#1},
        postaction={
            decorate,decoration={
                markings,Mark/.list={#2}
            }
        }
    },
}
\begin{document}

\begin{tikzpicture}
\coordinate (A) at (2.11,2.05);
\coordinate (B) at (2.5,2.5);

\draw[thick,->] (0,0) -- (5,0) node[anchor=north west] {x};
\draw[thick,->] (0,0) -- (0,5) node[anchor=south east] {y};
\filldraw[azul, draw=black, thick] (2.5,2.5) circle (2cm);
\filldraw[white, draw=black, thick] (2.5,2.5) circle (0.75cm);

\draw[thick,->] (2.5,2.5) -- (3.03,3.03);
\draw[thick] (2.5,2.5) -- (1.8,3.07) node [anchor= south east] {$\epsilon$};
\draw[thick,->] (1.3,3.50) -- (0.93,3.78);

 \draw[blue,  thick] plot [smooth,tension=1]
        coordinates {(A) (2.3,2.1) (2.65,1.6) (3.5,1.8) (4,2.5)  (B)}
        [arrow inside={end=stealth,opt={blue,scale=2}}{0.3,0.5,0.75,0.97}];
   
\filldraw[black] (B) circle (3pt) node [anchor= south] {$\delta$};
\filldraw[black] (A) circle (3pt);
\end{tikzpicture}

\end{document}

Bildbeschreibung hier eingeben

Antwort2

Bildbeschreibung hier eingeben

Die beiden Kurven scheinen unterschiedlich zu sein. Ich habe die erste alsHobbyKurve und die zweite alsEllipse. Die Markierungen sind auch unterschiedlich; daher habe ich in der Präambel zwei Arten von Dekorationen (mit unterschiedlichen Arten von Argumenten) definiert.

Die Aufzählungszeichen für die zweite Kurve werden durch Ausprobieren erstellt. Falls Sie die Zeichnung später noch einmal benötigen und leicht modifizieren müssen, ist es vielleicht besser, die Aufzählungszeichen über einen Parameter entlang der Ellipse zu definieren.

\documentclass[11pt, margin=1cm]{standalone}

\usepackage{tikz}
\definecolor{azul}{RGB}{187, 233, 255}

\usetikzlibrary{arrows}
\usetikzlibrary{calc, math, hobby, decorations.markings}

\tikzset{
  >=stealth',  % define standard arrow tip
  pil/.style={  % define arrow style
    ->,
    thick,
    shorten <=2pt,
    shorten >=2pt
  },
  show two/.style={%  define markings along path
    decorate, decoration={markings,
      mark=between positions .1 and .99 step .5 with {
        {\arrow[blue, line width=.8pt]{#1}};
      }
    }
  },
  show three/.style={%  define markings along path
    decorate, decoration={markings,
      mark=between positions .3 and .99 step #1 with {
        {\arrow[blue, line width=.8pt]{>}};
      }
    }
  }
}

\begin{document}

\tikzmath{
  real \R, \r;
  \R = 2;
  \r = .75;
}
\begin{tikzpicture}[every node/.style={color=black, scale=.7}]
  \draw[very thin, ->] (0,0) -- (5,0) node[anchor=north west] {$x$};
  \draw[very thin, ->] (0,0) -- (0,5) node[anchor=south east] {$y$};

  \path (2.5, 2.5) coordinate (B);
  \path
  ($(B)+(240:.7*\r)$) coordinate (A1)
  ($(B)+(270:.65*\r)$) coordinate (A2)
  ($(B)+(269:1.3*\r)$) coordinate (A3)
  ($(B)+(-70:1.8*\r)$) coordinate (A4)
  ($(B)+(-25:2.2*\r)$) coordinate (A5)
  ($(B)+(15:2.*\r)$) coordinate (A6)
  ($(B)+(-10:.9*\r)$) coordinate (A7)
  ($(B)+(-30:.8*\r)$) coordinate (A8);
  
  \draw[fill=azul, even odd rule] (B) circle (\R) (B) circle (\r);
  \draw[->, gray] (B) -- node[pos=.6, fill=azul] {$\epsilon$} +(135: \R);
  \draw[->, gray] (B) -- node[anchor=west, inner sep=1pt] {$\delta$} +(85: \r);

  \draw[blue, thick, postaction={show three={.28}}]
  (A1) to[curve through={(A2) (A3) (A4) (A5) (A6) (A7) (A8)}] (B);
  \filldraw (B) circle (1.5pt) (A1) circle (1.5pt)
  node[anchor=north east, inner sep=1pt] {$(\phi(0),\psi(0))$}; 
\end{tikzpicture}

\begin{tikzpicture}[every node/.style={color=black, scale=.7}]
  \draw[very thin, ->] (0,0) -- (5,0) node[anchor=north west] {$x$};
  \draw[very thin, ->] (0,0) -- (0,5) node[anchor=south east] {$y$};

  \path (2.5, 2.5) coordinate (B);
  \path ($(B)+(155:.76*\r)$) coordinate (A1);
  
  \draw[fill=azul, even odd rule] (B) circle (\R) (B) circle (\r);
  \draw[->, gray] (B) -- node[pos=.6, fill=azul] {$\epsilon$} +(130: \R);
  \draw[->, gray] (B)
  -- node[pos=.4, anchor=south east, inner sep=1pt] {$\delta$} +(55: \r);

  \draw[blue, thick, postaction={show two={<}}, rotate=35]
  (B) ellipse[x radius={\R-.01}, y radius=.5];
  \filldraw (B) circle (1.5pt) (A1) circle (1.5pt)
  node[anchor=south east, inner sep=1pt] {$(\phi(0),\psi(0))$};
\end{tikzpicture}

\end{document}

verwandte Informationen