我正在尝试标记 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}
另一个选择是angles
Ti钾Z 库(最好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}