TikZ:从蛇过渡到装饰品

TikZ:从蛇过渡到装饰品

我正在尝试更改 tikz 图片,以便它在编译时不会显示警告。

最小工作示例:

\documentclass[tikz,border=10pt]{standalone}
\usetikzlibrary{snakes}
%\usetikzlibrary{decorations.pathmorphing}



\begin{document}
\begin{tikzpicture}

\node[circle,draw] (S) at (0,0) {S};
\draw[snake=expanding waves,segment angle=25] (S)   -- (3,3);
%\draw[decorate,decoration={expanding waves,angle=25}] (S) -- (3,3);
\end{tikzpicture}
\end{document}

但是,当我删除蛇代码并取消注释基于装饰的代码时,我收到一条错误消息

软件包 pgfkeys 错误:我不知道密钥 '/pgf/decoration/\pgfkeyscurrentname ',我将忽略它。也许您拼错了。

现在我检查了手册中的示例以及此 SE 上的几个相关答案,但似乎都不适合我。

这个问题,唯一的区别是装饰用在\path命令上而不是\draw。我试过了,但没用。 另一个答案建议添加正确的子库,我将其标识为decorations.pathmorphing,但尝试这个也无济于事。有没有一种通用的方法(例如阅读文档)来判断哪个 tikz 库或子库必须添加到文档中?

我发现这个问题相当令人沮丧,因为对我来说没有明显缺点的代码(虽然我知道蛇库已被弃用),而所谓的最佳示例代码根本不起作用。我该如何解决这个问题?

我注意到另一个类似的问题因过于本地化而被关闭。如果我的问题也是这种情况,我该如何获得帮助?

答案1

扩展波位于路径替换库中,而不是路径变形库中,请参阅文档第 581 页。

\documentclass[tikz,border=10pt]{standalone}
\usetikzlibrary{decorations.pathreplacing}

\begin{document}
\begin{tikzpicture}
\node[circle,draw] (S) at (0,0) {S};
\draw[decoration={expanding waves,angle=25},decorate] (S) -- (3,3);
\end{tikzpicture}
\end{document}

enter image description here

相关内容