pgfplots 中的图表:所有节点标签的全局样式

pgfplots 中的图表:所有节点标签的全局样式

我有这个图表渲染三个功能:

\documentclass[12pt,a4paper]{article}
\usepackage{pgfplots}

\begin{document}

\begin{tikzpicture}
  \begin{axis}[
    width=10cm,
    height=10cm,
    axis lines=center,
    xmin=-1, xmax=100,
    ymin=-1, ymax=1000,
  ]
  \addplot[
    domain=0:25,
    ] {x^2} node[label={\(x^2\)}] {};
  \addplot[
    domain=0:9.8,
    ] {2^x} node[label={\(2^n\)}] {};
  \addplot[
    domain=0:90,
    ] {x} node[label={\(n\)}] {};
  \end{axis}
  \end{tikzpicture}
\end{document}

在此处输入图片描述

我想全局设置节点标签的样式。假设我想让它们具有黄色背景:我知道我可以在本地执行此操作,但如果样式变得复杂,代码就会变得难以阅读。

\begin{tikzpicture}
  \begin{axis}[
    width=10cm,
    height=10cm,
    axis lines=center,
    xmin=-1, xmax=100,
    ymin=-1, ymax=1000,
    label style={font=\small}
  ]
  \addplot[
    domain=0:25,
    ] {x^2} node[label={[fill=yellow]:{\(x^2\)}}] {};
    \addplot[
      domain=0:9.8,
      ] {2^x} node[label={[fill=yellow]:{\(2^n\)}}] {};
    \addplot[
      domain=0:90,
      ] {x} node[label={[fill=yellow]:{\(n\)}}] {};
  \end{axis}
  \end{tikzpicture}
\end{document}

在此处输入图片描述

如何在标题中仅添加一次节点标签的样式?

答案1

你可以利用 TiZ 的样式机制,允许您一次设置所有标签的样式:

\documentclass[border=2pt]{standalone}
\usepackage{pgfplots}

\begin{document}
\begin{tikzpicture}[every label/.style={fill=yellow}]
  \begin{axis}[
    width=10cm,
    height=10cm,
    axis lines=center,
    xmin=-1, xmax=100,
    ymin=-1, ymax=1000,
    label style={font=\small}
  ]
  \addplot[
    domain=0:25,
    ] {x^2} node[label={\(x^2\)}] {};
    \addplot[
      domain=0:9.8,
      ] {2^x} node[label={\(2^n\)}] {};
    \addplot[
      domain=0:90,
      ] {x} node[label={\(n\)}] {};
  \end{axis}
  \end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容