使用 tikz 或辫子线绘制的字符串交叉图

使用 tikz 或辫子线绘制的字符串交叉图

我想知道是否有一种简单的方法来创建如下所示的图表: 在此处输入图片描述

其中 a、b、c 是颜色,字符串连接起来的颜色也一样。在我读的论文中,它们不允许交叉,但我想允许不同颜色之间的交叉。所以像这样的事情是允许的(两种颜色,红色和蓝色)

在此处输入图片描述

我尝试使用编织包来做这个,但问题是我不知道如何制作那些半圆形

提前致谢!

答案1

像这样:

在此处输入图片描述

代码:

\documentclass[a4paper]{article}
\usepackage{tikz}

\begin{document}
    \thispagestyle{empty}
    \begin{tikzpicture}[scale=.7]
        \draw[gray!20] (-5,-5) grid (5,5); % <-- comment this line after seeiing the code
        \draw[red,line width=2pt] (-4,-4)--(-4,4);
        \draw[blue,line width=2pt] (-3,-4)--(-3,4);
        \draw[blue,line width=2] (4,-4) arc (0:180:3);
        \draw[blue,line width=2] (4,4) arc (0:-180:3);
        \draw[red,line width=2pt] (.5,-4)--(.5,4);
        \draw[red,line width=2pt] (1.5,-4)--(1.5,4);
    \end{tikzpicture}   
\end{document}

编辑:如果您希望在每条线弧的末尾添加彩色点,请在之前添加此行\end{tikzpicture}

\foreach \j in {-4,4}{
            \foreach \i/\c in {-4/red,-3/blue,-2/blue,.5/red,1.5/red,4/blue} 
            \filldraw[\c] (\i,\j) circle(4pt);
        }

新输出:

在此处输入图片描述

相关内容