如何在 tikz 中绘制以下矢量

如何在 tikz 中绘制以下矢量

我正在尝试在乳胶中绘制下图:在此处输入图片描述

\begin{tikzpicture}[every node/.style={draw,shape=circle,fill=blue}]
\coordinate (A) at (0,0);
\coordinate (B) at (1.5,1.5);
\coordinate (C) at (1.5,-1.5);
\coordinate (D) at (-1.5,1.5);

\draw[->] (A) -- (B);
\draw[->] (A) -- (C);
\draw[->] (A) -- (D);

\end{tikzpicture}

我是 tikz 新手,不太清楚如何在箭头末端标记以及上面带有标签 c、b_1、b_2 的节点。有人能帮帮我吗?

答案1

您还可以使用pstricks

\documentclass{article}
\usepackage{pstricks-add}
\begin{document}

\psset{unit=4}
\begin{pspicture}(1,-1)(4,1)
\psTangentLine[Tnormal,arrows=->,linecolor=red](2.5,0.2)(3.2,0.4)(3.8,-0.2){3.5}{0.5}
\psTangentLine[arrows=<->,linecolor=blue](2.5,0.2)(3.2,0.4)(3.8,-0.2){3.5}{0.5}
\rput[r](4,-.35){$\bf{v}_1$}
\rput[r](4,.5){$\bf{v}_2$}
\end{pspicture}
\end{document}  

在此处输入图片描述

答案2

发布代码时,请始终将其制作成完整的最小文档。

最简单的添加标签的方式是在绘制线条时隐式添加。例如:

\documentclass[border=10pt,multi,tikz]{standalone}
\begin{document}
\begin{tikzpicture}
  \coordinate (A) at (0,0);
  \coordinate (B) at (1.5,1.5);
  \coordinate (C) at (1.5,-1.5);
  \coordinate (D) at (-1.5,1.5);

  \draw [->] (A) -- (B) node [pos=.9, auto, swap] {$b_1$} node [pos=.9, auto] {$C$} ;
  \draw [->] (A) -- (C) node [pos=.9, auto] {$b_2$} ;
  \draw [->] (A) -- (D);
\end{tikzpicture}
\end{document}

隐式定位

或者你可以让代码更紧凑。例如,添加quotes库并组合绘图命令可将 3\draw秒缩短至 1 秒。

\documentclass[border=10pt,multi,tikz]{standalone}
\usetikzlibrary{quotes}
\begin{document}
\begin{tikzpicture}[every edge quotes/.style={pos=.9, auto}]
  \coordinate (A) at (0,0);
  \coordinate (B) at (1.5,1.5);
  \coordinate (C) at (1.5,-1.5);
  \coordinate (D) at (-1.5,1.5);

  \draw (A) edge [->, "$b_1$"', "$C$"] (B) (D) edge ["$b_2$", <->] (C) ;
\end{tikzpicture}
\end{document}

输出与之前一样。

我们甚至可以将图片精简为一行代码。

\documentclass[border=10pt,multi,tikz]{standalone}
\usetikzlibrary{quotes}
\begin{document}
\tikz[every edge quotes/.style={pos=.9, auto}] \draw (0,0) edge [->, "$b_1$"', "$C$"] (1.5,1.5) (-1.5,1.5) edge ["$b_2$", <->] (1.5,-1.5) ;
\end{document}

答案3

只需添加以下代码即可绘制节点:

 \node (C1) at (1.8,-1.5) {$\mathbf{b}_2$}; 

您可以对其余部分执行相同的操作。

相关内容