我目前正在尝试弄清楚垂直箭头如何工作,但失败了。
服用:
\draw [arrow] (node1) -- node[sloped, above] {Caption} (node1 |- node2.north west);
我怀疑这个符号的意思是:
从节点 1 画一个箭头到节点 2 的西北角。
使箭头垂直于节点 1。
进一步尝试绘制箭头后,我发现:不,不是这样的。遗憾的是,我没能弄清楚这个符号到底是干什么的!有没有“给新手的解释”能让我明白到底是什么
node1 |-
應該怎麼做?
谢谢!
答案1
有两个不同的地方可以使用-|
/ |-
:
在一个协调规格。
这是你使用的,一般形式是
(a -| b)
其中
a
和b
分别命名为node
或coordinate
s。这表示 的 y 坐标为a
, x 坐标为b
。类似地,(a |- b)
的 x 坐标为a
, y 坐标为b
。例如,以下代码从到
a
绘制一个水平箭头。(0,0)
(1,0)
\documentclass[border=10pt]{standalone} \usepackage{tikz} \begin{document} \begin{tikzpicture} \coordinate (a) at (0,0); \coordinate (b) at (1,1); \draw [->] (a) -- (a -| b); \end{tikzpicture} \end{document}
您还可以使用它作为
\coordinate (c) at (a -| b);
然后
\draw [->] (a) -- (c);
执行与上述相同的操作。作为一个小路规格。
用于两个坐标之间,代替
--
。箭头
\draw [->] (a) -| (b);
从 水平移动a
,然后垂直移动到b
。(箭头|-
先垂直移动,然后水平移动。)\documentclass[border=10pt]{standalone} \usepackage{tikz} \begin{document} \begin{tikzpicture} \coordinate (a) at (0,0); \coordinate (b) at (1,1); \draw [->] (a) -| (b); \end{tikzpicture} \end{document}
答案2
如果a
是位置处的坐标/节点(a_x, a_y)
,并且
b
是(b_x, b_y)
,则
a |- b := (a_x, b_y)
a -| b := (b_x, a_y)
它们只是组合x/y
两点坐标的简写。