将相同的选项应用于 pgfplots 中的多个“addplot”

将相同的选项应用于 pgfplots 中的多个“addplot”

我可以将相同的选项应用于addplot单一axis环境中的所有选项吗pgfplots

例如:

\begin{tikzpicture}
   \begin{axis}
     \addplot[%plot 1
              color = red,
              mark = none
             ] {x^2 - x +4};
     \addplot[%same options as in plot 1
             ] {x^3};
  \end{axis}
\end{tikzpicture}

答案1

您可以定义一种(或多种)样式:

\documentclass{standalone}
\usepackage{pgfplots}
\usepackage{tikz}

\tikzstyle{style_a}=[color = red, mark = none, dashed]

\begin{document}

\begin{tikzpicture}
   \begin{axis}[
        xmin=-10,
        xmax=10,
        xlabel={$x$},
        ylabel={$y$},
        ymin=-10,
        ymax=10]
     \addplot[style_a] {x^2};
     \addplot[style_a] {x^3 -4};
  \end{axis}
\end{tikzpicture}

\end{document} 

在此处输入图片描述

答案2

仅供未来的读者参考:在撰写本文时,此答案tikzstyle已被弃用。来自文档

从 pgfplots 1.1 开始,\tikzstyle不应再用于设置pgfplots选项。虽然\tikzstyle仍支持某些较旧的pgfplots选项,但您应\tikzstyle使用\pgfplotsset{<style name>/.style={<key-value-list>}}或相关 /.append style变体替换任何出现的

考虑到这一点

\documentclass{standalone}
\usepackage{pgfplots}
\usepackage{tikz}

\pgfplotsset{style a/.style={color = red, mark = none, dashed}}

\begin{document}

\begin{tikzpicture}
   \begin{axis}[
        xmin=-10,
        xmax=10,
        xlabel={$x$},
        ylabel={$y$},
        ymin=-10,
        ymax=10]
     \addplot[style a] {x^2};
     \addplot[style a] {x^3 -4};
  \end{axis}
\end{tikzpicture}

\end{document}

在此处输入图片描述

答案3

如果您想要所有 addplots 的一些键,则无需定义命名样式并调用它。
只需说every axis plot/.append style={....}

(因为every axis plot={....}在某些情况下似乎还不够。)

在此处输入图片描述

\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\begin{document}

\begin{tikzpicture}
\begin{axis}[
xmin=-10,  xmax=10,
ymin=-10,  ymax=10,
xlabel={$x$},
ylabel={$y$},
every axis plot/.append style={red, mark=none, dashed},
]
\addplot[] {x^2};
\addplot[] {x^3 -4};
\end{axis}
\end{tikzpicture}
\end{document}

相关内容