如何画这些箭头?

如何画这些箭头?

我知道我的问题不是一个好问题。我只是想知道这种类型的图表是否适合使用 tikz 来绘制。

我想在课堂上使用这张图片,但是该图片不是矢量图,我想自己画,但是在画这些箭头时却遇到困难。

在此处输入图片描述

参见:Stanislas Dehaene:数字能力的多样性。《认知》,44(1992)1-42

答案1

这是使用 绘制箭头的一种方法pic。我认为它并不完美,但它可能会起到作用。

在此处输入图片描述

\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.arrows,calc,fit}
\tikzset{
dashedarrow/.pic={
  \node [transform shape,single arrow,draw,single arrow tip angle=50] (x) {\phantom{abc}};
  \draw ($(x.after tail)+(-2pt,0)$) rectangle ($(x.before tail)+(-12pt,0)$);
  \draw ($(x.after tail)+(-14pt,0)$) rectangle ($(x.before tail)+(-21pt,0)$);
  \draw ($(x.after tail)+(-23pt,0)$) rectangle ($(x.before tail)+(-27pt,0)$);
  \draw ($(x.after tail)+(-29pt,0)$) rectangle ($(x.before tail)+(-31pt,0)$) coordinate (ll);
  \node [transform shape,fit=(ll)(x.before tip)(x.after tip)(x.tip),inner sep=0pt] (-border) {};
  }
}
\begin{document}
\begin{tikzpicture}
 \pic [blue] {dashedarrow};

 \pic (a) at (0,2) {dashedarrow};
 \node [above] at (a-border.north) {Stuff};

 \pic [rotate=160] (b) at (2,0) {dashedarrow};
 \path (b-border.south west) -- node[sloped,above] {Other stuff} (b-border.south east);

 \pic [rotate=30,scale=0.5] (c) at (2,2) {dashedarrow};
 \path (c-border.north west) -- node[sloped,above] {Foo} (c-border.north east);
\end{tikzpicture}
\end{document}

相关内容