我对tikz
(还很陌生)特别是我非常欣赏它对极坐标的处理),并希望得到指导,以便构建下面捕获的两个内部“弧”/螺旋。我可以轻松地处理图形的其余部分。如您所见,它们几乎是完美的圆形,但增长非常缓慢。当然,一些轻量级/便携式解决方案将是理想的选择,而不是精度。
\begin{tikzpicture}
\draw[->,gray] (0,-2) -- (0,2) node[right]{$y$};
\draw[->,gray] (-3,0) -- (3,0) node[right]{$x$};
\draw[fill] (1,1.2) circle [radius=.03];
\draw[->] (1,1.2) to [out=45,in=220] (1.15,1.35);
% something here...
\end{tikzpicture}
答案1
你扩展的弧线看起来非常像螺旋。;-)
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{decorations.markings,arrows.meta}
\begin{document}
\begin{tikzpicture}
\draw[->,gray] (0,-2) -- (0,2) node[right]{$y$};
\draw[->,gray] (-3,0) -- (3,0) node[right]{$x$};
\draw[{Circle[scale=0.6]}-,postaction={decorate,decoration={markings,
mark=at position 0.1 with {\arrow{>};},
mark=at position 0.2 with {\arrow{Circle[scale=0.6]};},
mark=at position 0.3 with {\arrow{Circle[scale=0.6]};}}}]
plot[variable=\x,samples=100,domain=225:590]
({1.5+(0.3+0.002*\x)*cos(-\x)},{0.75+(0.3+0.002*\x)*sin(-\x)});
\draw[{Circle[scale=0.6]}-,postaction={decorate,decoration={markings,
mark=at position 0.95 with {\arrow{>};}}}]
plot[variable=\x,samples=100,domain=225:545]
({1.5+(0.1+0.03*(\x/100)*(\x/100))*cos(-\x)},{0.75+(0.1+0.0015*\x)*sin(-\x)});
\end{tikzpicture}
\end{document}
答案2
如果您想要看起来更像“手工制作”的东西,您可以使用hobby
包装。
\documentclass[tikz,border=7pt]{standalone}
\usetikzlibrary{hobby}
\begin{document}
\begin{tikzpicture}[use Hobby shortcut]
\draw (-1,0) edge[-latex] (3,0) (0,-1) edge[-latex] (0,3);
\draw[red,-latex] (.5,1) .. (1,1.5) .. (1.5,-.2) .. (.5,1.5);
\draw[red,-latex] (.7,.8) .. (1,1) .. (1.1,0) .. (.2,.7);
\end{tikzpicture}
\end{document}