![TIKZ:如何装饰 \path?](https://linux22.com/image/242299/TIKZ%EF%BC%9A%E5%A6%82%E4%BD%95%E8%A3%85%E9%A5%B0%20%5Cpath%EF%BC%9F.png)
我的问题是关于在数学中绘制“交换型图”。我想积分一个 类型的箭头\rightsquigarrow
,该箭头的获取方式如下:tikz 中的波浪箭头。
问题是我用来\path
连接矩阵的条目tikz
(因为这部分集成在更大的图中),然后出现错误
“包 PGF 错误:我无法修饰空路径。”。
代码如下
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{decorations.pathmorphing}
\usepackage{amssymb}
\begin{document}
\begin{tikzpicture}
\matrix (m) [matrix of math nodes, row sep=3em, column sep=4em, text height=2ex, text depth=0.25ex]
{ U & U \\};
\path [->, font=\scriptsize, line join=round, decoration={
zigzag,
segment length=4,
amplitude=.9,post=lineto,
post length=2pt}, decorate] (m-1-1) edge node[auto] {F} (m-1-2);
\end{tikzpicture}
\end{document}
装饰部分不起作用。
答案1
您可以指定路径的装饰,并提供edge
选项decorate
:
\path [->, decoration={zigzag,segment length=4,amplitude=.9,
post=lineto,post length=2pt},font=\scriptsize,
line join=round] (m-1-1) edge[decorate] node[auto] {F} (m-1-2);
答案2
您需要添加matrix
库,否则示例无法编译。此外,将 添加draw
到您的路径,否则没有行。最后,将其替换edge
为--
,您应该得到您想要的内容。
更新:也许我应该补充一下为什么不起作用edge
而--
起作用。根据 TikZ 手册,该edge
操作在绘制主路径后添加了一条新路径。这条新路径将具有选项every edge
和提供给操作的选项edge
。最重要的是,它不会具有与边缘所属路径相同的选项。因此,如果您坚持使用edge
而不是,则--
需要将装饰信息作为选项添加到edge
路径或样式中every edge
。