![pgfplots 中的图表:所有节点标签的全局样式](https://linux22.com/image/441092/pgfplots%20%E4%B8%AD%E7%9A%84%E5%9B%BE%E8%A1%A8%EF%BC%9A%E6%89%80%E6%9C%89%E8%8A%82%E7%82%B9%E6%A0%87%E7%AD%BE%E7%9A%84%E5%85%A8%E5%B1%80%E6%A0%B7%E5%BC%8F.png)
我有这个图表渲染三个功能:
\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
你可以利用 Ti钾Z 的样式机制,允许您一次设置所有标签的样式:
\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}