我想定义一个自定义路径样式(例如skip loop
来自http://www.texample.net/tikz/examples/diagram-chains/) 并且仍然能够将节点定位在路径上的任何位置 ( midway
、near end
、at start
、pos=0.3
等)。一旦我对路径使用自定义样式,节点就会消失。请参阅以下最小工作示例:
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[%
,>=latex%
,skip loop/.style={to path={-- ++(0,#1) -| (\tikztotarget)}}%
]
% bended path: node is visible
\draw [<->] (0,0) to [bend left] node [near start,above] {x} (4,0);
% custom path: node is invisible
\draw [<->] (0,-1.5) to [skip loop=1] node [near start,above] {y} (4,-1.5);
\end{tikzpicture}
\end{document}
我想使用该\draw
命令并避免该\path
命令。 有可能吗?
答案1
自定义to path
需要\tikztonodes
宏将收集到的节点放置在路径上。因此它应该读作
skip loop/.style={to path={-- ++(0,#1) -| (\tikztotarget)\tikztonodes}}
处理节点。