我目前正在处理这张图片,这是代码。它用于显示第一象限中复数的乘法,显示长度和角度的变化。
\begin{tikzpicture}
\begin{polaraxis}[%
xmin=0,
xmax=90,
ymax=3,
xticklabel=$\pgfmathprintnumber{\tick}^{\circ}$,
ytick={0,1,2,3v},
yticklabel style={yshift=-13pt},
grid=both,
minor grid style={dashed,black!25},
major grid style=black,
minor tick num=1]
\addplot[->,red,very thick] plot coordinates {(0,0) (15,1.5)} node[right] {$z$};
\addplot[->,blue,very thick] plot coordinates {(0,0) (45,2)} node[right] {$v$};
\addplot[->,purple,very thick] plot coordinates {(0,0) (60,3)} node[left] {$zv$};
\addplot[->,blue,dashed,very thick] plot coordinates {(0,0) (45,3)} node[left] {$\left| z \right| v$};
\end{polaraxis}
\end{tikzpicture}
该代码基于我在这里找到的内容,但我正在尝试使其适应我以前所拥有的内容(尽管它不那么好):
\begin{tikzpicture}
\begin{scope}[every node/.style={fill=white,inner sep=2pt}]
\draw (0,-3)--(0,3) node[above] {$Im$} (-03,0)--(3,0) node[right] {$Re$};
\draw[dashed] (0,0) circle (3) circle (2) circle (1);
\coordinate (a) at (30:1.5);
\coordinate (b) at (45:2);
\coordinate (c) at (75:3);
\coordinate (o) at (0:0);
\coordinate (x) at (0:1.5);
\draw (a) [blue] node[above right] {$z$};
\draw (b) [red] node[right] {$v$};
\draw (c) [purple] node[above right] {$zv$};
\draw (0,0)--(a) [blue, thick];
\draw (0,0)--(b) [red, thick];
\draw (0,0)--(c) [purple, thick];
\draw[dashed, red, thick] (0:0)--(45:3) node[above right] {$\left| z \right| v$};
\end{scope}
\pic[draw,dashed,blue,ultra thicangle radius=0.9cm,angle eccentricity=1.3] {angle=x--o--a};
\pic[draw,dashed,red,ultra thick,angle radius=0.8cm,angle eccentricity=1.3] {angle=x--o--b};
\pic[draw,dashed,purple,ultra thick,angle radius=0.7cm,angle eccentricity=1.3] {angle=x--o--c};
\draw (15:1) [blue] node[right] {$\theta$};
\draw (48:1) [red] node[right] {$\phi$};
\draw (76:1.1) [purple] node[above right] {$\theta+\phi$};
\draw (0:1) [black] node[below] {$1$};
\draw (0:2) [black] node[below] {$2$};
\draw (0:3) [black] node[below] {$3$};
\fill[blue] (a) circle (2pt);
\fill[red] (b) circle (2pt);
\fill[purple] (c) circle (2pt);
\fill[red] (45:3) circle (2pt);
\end{tikzpicture}
如何在第一段代码中将角度测量结果转换为“圆圈”?我还需要删除度数并将其转换为“Im”和“Re”
答案1
像这样?
\documentclass[tikz,border=3mm]{standalone}
\usepackage{amsmath}
\usetikzlibrary{angles}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16,width=12cm}
\usepgfplotslibrary{polar}
\begin{document}
\begin{tikzpicture}[bullet/.style={circle,fill,inner sep=1.5pt}]
\begin{polaraxis}[%
xmin=0,
xmax=90,
ymax=3,
xtick=\empty,
ytick={0,1,2,3},
yticklabel style={yshift=-13pt},
grid=both,
minor grid style={dashed,black!25},
major grid style=black,
minor tick num=1,clip=false]
\draw[-stealth] (0,0) coordinate (O)-- (0,3.5) coordinate(x) node[below] {$\operatorname{Re}z$};
\draw[-stealth] (O) -- (90,3.5) coordinate(y) node[left] {$\operatorname{Im}z$};
\begin{scope}[,red,very thick,-stealth,shorten >=1.5pt]
\draw[blue] (O) -- (15,1.5) node[bullet,label=right:{$z$}](z){};
\draw[red] (O) -- (45,2) node[bullet,label=right:{$v$}](v){};
\draw[purple] (O) -- (60,3) node[bullet,label=right:{$z\,v$}](zv){};
\draw[red,dashed] (0,0) -- (45,3) node[bullet,label=right:{$\left| z \right| v$}]{};
\end{scope}
\pic[draw,dashed,blue,thick,angle radius=1.4cm,
angle eccentricity=1.1,pic text={$\theta$}] {angle=x--O--z};
\pic[draw,dashed,red,thick,angle radius=1.9cm,
angle eccentricity=1.1,pic text={$\phi$}] {angle=x--O--v};
\pic[draw,dashed,purple,thick,angle radius=2.4cm,
angle eccentricity=1.2,pic text={$\theta+\phi$}] {angle=x--O--zv};
\end{polaraxis}
\end{tikzpicture}
\end{document}