如何使用两种不同的颜色突出显示 Tikz 中的路径?

如何使用两种不同的颜色突出显示 Tikz 中的路径?

我在 Tikz 中绘制了一个小图,其中有两条路径以不同的颜色突出显示。但是,这些路径将共享一个箭头。我想要用两种颜色突出显示这个箭头,一个在上,一个在下,以便读者可以区分这两条路径。有没有办法在 Tikz 中做到这一点?下面是我生成图片的 Tikz 代码:

\begin{tikzpicture}
\tikzset{edge/.style = {->,very thick}}
\tikzset{p1/.style={preaction={%But before that
draw,yellow,-,% Draw yellow without any arrow head
double=yellow,
double distance=.4\pgflinewidth,
}}}
\tikzset{p2/.style={preaction={%But before that
draw,green,-,% Draw green without any arrow head
double=green,
double distance=.4\pgflinewidth,
}}}
\tikz {
%%First graph
\draw[edge,densely dashed](0,0) node[label={[xshift=-.2cm,yshift=-.4cm]$w$}]{} -- (1,0) ;
\draw[edge,red,p1] (1,0) -- (2.45,.5) ;
\draw[edge,densely dashed,p1] (2.5,.5) node[label={[xshift=0cm,yshift=-.2cm]$w'$}]{} .. controls (3.25,1) .. (4.95,0.15);
\draw[edge,blue,p2] (1,0) -- (2.45,-.5);
\draw[edge,blue,densely dashed] (2.5,.5) -- (3.35,.10);
\draw[edge,red,densely dashed] (2.5,-.5) -- (3.35,-.10);
\draw[edge,densely dashed] (3.8,0) node[label={[xshift=-.2cm,yshift=-.4cm]$w'''$}]{}-- (5,0) node[label={[xshift=.2cm,yshift=-.4cm]$W$}]{};
\draw[edge,densely dashed,p2] (2.45,-.5) node[label={[xshift=0cm,yshift=-.8cm]$w''$}]{} .. controls (3.25,-1) .. (4.95,-0.15);
}
\end{tikzpicture}

我刚刚学会了如何在 Tikz 中做这种事情,因此对于我确信非常糟糕的编码风格深表歉意。

我希望结果看起来类似于问题“双色箭头”但黑色虚线箭头仍然可见(如果可能的话,在 Tikz 中也可见)。非常感谢您提供的任何帮助!

编辑:为了更清楚起见,我附上了一张图片。再次感谢。 双色箭

答案1

w'''这不是很优雅,但你可以用以下方法替换从到绘制边缘的线W

\draw[blue, very thick,yshift=0.7pt](3.8,0)--(4.9,0);
\draw[red,very thick,yshift=-0.7pt](3.8,0)--(4.9,0);
\draw[edge,densely dashed] (3.8,0) node[label={[xshift=-.2cm,yshift=-.4cm]$w'''$}]{}-- (5,0) node[label={[xshift=.2cm,yshift=-.4cm]$W$}]{};

得出:

在此处输入图片描述

我确信应该有一些更奇特的(更好的)方法可以通过装饰/预先行动来实现这一点,但是......

答案2

\documentclass[pstricks,dvipsnames]{standalone}
\usepackage{pst-node}

\def\myline(#1)(#2){%
    \pnode(#1){A}
    \pnode(#2){B}
    \psset{linewidth=1}
    \pcline[offset=.5,linecolor=Yellow](A)(B)
    \pcline[offset=-.5,linecolor=Green](A)(B)
    \psline[arrowsize=0pt 2]{->}(A)(B)}

\begin{document}
\pspicture[showgrid=false](-4,-3)(4,3)
    \myline(-3,-1)(3,1)
\endpspicture
\end{document}

在此处输入图片描述

相关内容