如何使用 pgfplots 以相同的样式(使用循环列表)绘制两条线?

如何使用 pgfplots 以相同的样式(使用循环列表)绘制两条线?

我使用循环列表和\addplot+命令以不同的样式绘制线条。我想使用每种样式绘制几样东西,如下所示:

% Plot using style 1
\addplot+ coordinates {...};
\addplot coordinates {...};
\addlegendentry{Style 1}

% Plot using style 2
\addplot+ coordinates {...};
\addplot coordinates {...};
\addlegendentry{Style 2}

我怎样才能做到这一点?

答案1

forget plot键是执行此操作的常用方法,但\addlegendentry{}不选择它位于哪个addplot命令之后。您必须在开始时连续绘制要图例化的图(!?)。因此,您可以整理这些图,以便按照以下样式绘制它们 1-2-3,1-2-3

\begin{tikzpicture}
\begin{axis}
% Plot using style 1
\addplot {ln(x)};\addlegendentry{Style 1}
\addplot {3*x};\addlegendentry{Style 2}

\pgfplotsset{cycle list shift=-2} % Goes two styles back
\addplot {0.5*x}; %Style 1
\addplot {2*x}; %Style 2
\end{axis}
\end{tikzpicture}

在此处输入图片描述

答案2

没关系,我似乎自己在pfdplots 手册第 4.25 节“杂项选项”,具体forget plot选项为:

% Plot using style 1
\addplot+ [forget plot] coordinates {...};
\addplot+ coordinates {...};
\addlegendentry{Style 1}

% Plot using style 2
\addplot+ [forget plot] coordinates {...};
\addplot+ coordinates {...};
\addlegendentry{Style 2}

相关内容