如何制作带有线方程的箭头。是否有各种箭头样式,例如弯曲箭头等?
\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}[xscale=0.04,yscale=0.08,domain=0.125:100,samples=400]
\draw[->] (0,0) -- (150,0) node[below] {$x$};
\draw[->] (0,0) -- (0,65) node[left] {$y$};
\draw[red] plot (\x,{50-0.5*\x});
\end{tikzpicture}
\end{document}
答案1
此类箭头以 为名pin
。
\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}[xscale=0.04,yscale=0.08,domain=0.125:100,
declare function={f(\x)=50-0.5*\x;},
every pin edge/.style={-stealth,shorten <=0.5pt,black}]
\draw[->] (0,0) -- (150,0) node[below] {$x$};
\draw[->] (0,0) -- (0,65) node[left] {$y$};
\draw[red] plot[samples=2] (\x,{f(\x)});
\path (0.125,{f(0.125)}) -- (100,{f(100)})
node[pos=0.5,sloped,pin={[black]110:{$y=50-x/2$}}]{};
\end{tikzpicture}
\end{document}
或者用触摸针。
\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}[xscale=0.04,yscale=0.08,domain=0.125:100,
declare function={f(\x)=50-0.5*\x;},
every pin edge/.style={-stealth,shorten <=-1pt,black}]
\draw[->] (0,0) -- (150,0) node[below] {$x$};
\draw[->] (0,0) -- (0,65) node[left] {$y$};
\draw[red] plot[samples=2] (\x,{f(\x)});
\path (0.125,{f(0.125)}) -- (100,{f(100)})
node[pos=0.5,inner sep=0pt,sloped,pin={[black]110:{$y=50-x/2$}}]{};
\end{tikzpicture}
\end{document}
答案2
只需在 plot 命令后添加即可确定端点coordinate{B}
。然后,要确定起点,请将其放入x=0
方程中以获得(0,50)
点A
。使用calc
库绘制从 AB 中间开始的箭头,并分别在和方向($(A)!.5!(B)$)
上将其延长 10 和 5 。x
y
您可以从库中选择其他箭头arrows.meta
。对于其他复杂曲线,可以选择使用intersections
库来确定曲线与原点 45 度线之间的交点,以确定起点。
\documentclass[tikz]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}[xscale=0.04,yscale=0.08,domain=0.125:100,samples=400]
\draw[->] (0,0) -- (150,0) node[below] {$x$};
\draw[->] (0,0) -- (0,65) node[left] {$y$};
\draw[red] plot (\x,{50-0.5*\x}) coordinate(B) (0,50) coordinate(A);
\draw [->] ($(A)!.5!(B)$) -- ++(10,5) node[right]{$y=50-x/2$};
\end{tikzpicture}
\end{document}