使用宏绘制字符串图

使用宏绘制字符串图

我正在写一篇论文,其中包含大量以下类型的字符串图。问题是其中许多都很复杂,从头开始绘制它们需要花费大量时间。有没有一种巧妙的方法来绘制它们?也许使用宏?有人可以提供一个例子吗?

文本

提前非常感谢您!

答案1

如果您有很多这样的数字,那么就knot应该使用该包。

以下是另一个建议。我手绘每条曲线并将一些节点放在适当的位置。代码本身就解释了(我希望!)。

在此处输入图片描述

在此处输入图片描述

\documentclass[tikz,border=5mm]{standalone}
\begin{document}
\begin{tikzpicture}
\def\rcurv{(1,0)--++(90:1) arc(180:0:.5) arc(180:360:.5)--++(90:1)}
\draw \rcurv ;
\draw[xscale=-1] \rcurv ;
\draw (0,0) node[below]{$(C)$}--+(90:2);
\path
(.5,1) node{=}
(-.5,1) node{=};
\end{tikzpicture}
\begin{tikzpicture}
\draw (1,0)--++(90:1) node[pos=.8,draw,fill=white]{$r$} 
arc(180:0:.5) arc(180:360:.5)--+(90:1);
\draw[xscale=-1] (1,0)--++(90:1) arc(180:0:.5) arc(180:360:.5)--+(90:1) node[pos=.2,draw,fill=white]{$r$};
\path (0,1) node{=} node[below=2mm]{$(I)$};
\end{tikzpicture}
\end{document}

相关内容