Tikz 标签矢量之间的角度

Tikz 标签矢量之间的角度

我正在尝试标记 B 向量和 y 轴之间的角度,但我不知道该怎么做。有人能帮我吗?我的代码如下

\begin{figure}[h]
\centering
\begin{tikzpicture}
    \draw[->] (-1,0)--(4,0) node[right]{$x$};
    \draw[->] (0,-1)--(0,4) node[above]{$y$};
    \draw[->, ultra thick] (0,0) -- (2,0) node[below]{$\vec{A}$};
    \draw[->, ultra thick] (0,0) -- (-1,1.732050808) node[left]{$\vec{B}$};
\end{tikzpicture}
\end{figure}

答案1

您可以计算它的值,然后绘制并标记它(当然,标签可以是任何其他的):

\documentclass[tikz,border=1.618mm]{standalone}
\usepackage{siunitx} % only for \ang

\begin{document}
\begin{tikzpicture}
    \draw[->] (-1,0)--(4,0) node[right]{$x$};
    \draw[->] (0,-1)--(0,4) node[above]{$y$};
    \draw[->, ultra thick] (0,0) -- (2,0) node[below]{$\vec{A}$};
    \draw[->, ultra thick] (0,0) -- (-1,1.732050808) node[left]{$\vec{B}$};
    % computing the angle:
    \pgfmathsetmacro\myangle{atan(1/1.732050808)}
    \draw (0,0.75) arc (90:90+\myangle:0.75) node[midway,above] {\rotatebox{90}{\ang{\myangle}}};
\end{tikzpicture}
\end{document}

在此处输入图片描述

另一个选择是anglesTiZ 库(最好quotes也加上)。如果标签不是角度值,则无需计算它。对于此选项,您需要创建定义角度的所有点的坐标。

\documentclass[tikz,border=1.618mm]{standalone}
\usetikzlibrary{angles,quotes}

\begin{document}
\begin{tikzpicture}
    \draw[->] (-1,0)--(4,0) node[right]{$x$};
    \draw[->] (0,-1)--(0,4) coordinate (Y) node[above]{$y$};
    \draw[->, ultra thick] (0,0) -- (2,0) node[below]{$\vec{A}$};
    \draw[->, ultra thick] (0,0) -- (-1,1.732050808) coordinate (B) node[left]{$\vec{B}$};
    \coordinate (O) at (0,0);
    \pic[draw, angle eccentricity=1.5,"$\alpha$"] {angle=Y--O--B};
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容