TikZ:沿线改变箭头的位置?

TikZ:沿线改变箭头的位置?

我有一个 TikZ 绘图标记和一个指向它的箭头:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{plotmarks}
\begin{document}

 \begin{tikzpicture}
  \node at (4,0) {\pgfuseplotmark{*}};
  \draw [->] (0,0) -- (4,0);
 \end{tikzpicture}

\end{document}

箭头和绘图标记应该具有相同的颜色,因此箭头几乎不可见,因为它与绘图标记位于相同的位置。

有没有办法(无需计算新坐标)将箭头稍微定位在线末端之前,以便箭头接触绘图标记而不是位于其中?

答案1

看看这个解决方案是否可以接受:

\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{plotmarks}

\begin{document}
    \begin{tikzpicture}
\draw [->] (0,0) -- (4,0) node[right=-1.5pt] {\pgfuseplotmark{*}};
    \end{tikzpicture}
\end{document}

在此处输入图片描述

我不知道你的意图,但无论如何,看看 arrows.meta 库是否可以提供解决方案( 的组合{Straight Barb[].Circle[]})。在这种情况下,你不需要 circle 的节点:

\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{arrows.meta,plotmarks}

\begin{document}
    \begin{tikzpicture}[
myarrow/.style = {-{Straight Barb[].Circle[width=3.2pt,length=3.2pt]},
                  shorten >=-1.6pt}
                        ]
\draw [myarrow] (0,0) -- (3,0);
\draw [myarrow] (3,0) -- (3,3);

   \end{tikzpicture}
\end{document}

这使:

在此处输入图片描述

相关内容