改变曲线的形式来区分它们

改变曲线的形式来区分它们

如果我们假设同一张图中有 2 条曲线。为了区分它们,我们为它们设置不同的颜色。但是,我们可以改变形状而不是颜色吗?换句话说,如果我们假设有 5 条曲线,为了区分它们,我们为每条曲线设置特定形状。有什么帮助吗?

顺便说一下,你可以阅读下面的代码(取自这个关联)。

\documentclass{article}
\usepackage{tikz,pgfplots}

\begin{document}
   \begin{tikzpicture}
        \begin{axis}[%
            axis x line=bottom,
            axis y line=left,
            xlabel=$X$,
            ylabel=$Y$,
            legend pos= south east]
            \addplot[mark=none,blue,thick] coordinates {(0.1, 0.003) (0.5, 0.005) (2, 0.4) (5, 1)};
            \addplot[mark=none,red,thick] coordinates {(0.1, 0.2) (0.5, 0.5) (2, 0.1) (5, 1.4)};
            \legend{$Y_1$,$Y_2$};
        \end{axis}
    \end{tikzpicture}
\end{document}

enter image description here

答案1

中有多种线条样式可供选择pgfplots。默认为实线,其他选项包括dashed、、以及相同的密集和松散版本,例如和dotted。请参阅部分dashdotteddensely dashedloosely dashed4.7.2 线条样式手册pgfplots

您还可以使用 指定自己的模式dash pattern,例如dash pattern=on 10pt off 2pt on 5pt off 6pt

将这些添加到 的选项中\addplot,就像颜色一样。例如:

\documentclass{article}
\usepackage{tikz,pgfplots}

\begin{document}
   \begin{tikzpicture}
        \begin{axis}[%
            axis x line=bottom,
            axis y line=left,
            xlabel=$X$,
            ylabel=$Y$,
            legend pos=north west]
            \addplot[mark=none,solid,thick] coordinates {(0,0) (1,0.5)};
            \addplot[mark=none,dashed,thick] coordinates {(0,0) (1,1)};
            \addplot[mark=none,dotted,thick] coordinates {(0,0) (1,1.5)};
            \addplot[mark=none,dashdotted,thick] coordinates {(0,0) (1,2)};
            \addplot[mark=none,dash pattern=on 10pt off 2pt on 5pt off 6pt,thick] coordinates {(0,0) (1,2.5)};
            \legend{$Y_1$,$Y_2$,$Y_3$,$Y_4$,$Y_5$};
        \end{axis}
    \end{tikzpicture}
\end{document}

enter image description here

相关内容