使用阴影 TikZ 库,我们可以为矩形添加阴影。有没有办法将相同的效果添加到 pgfplots 图片的框轴?这是一个最小的例子:
\documentclass{minimal}
\usepackage{tikz}
\usepackage{pgfplots}
\usetikzlibrary{shadows}
\begin{document}
\begin{tikzpicture}
\draw[fill=white, drop shadow] (0,0) rectangle (5, 5);
\end{tikzpicture}
\vspace*{1.0\baselineskip}
\begin{tikzpicture}
\begin{axis}
\addplot {x^2};
\end{axis}
\end{tikzpicture}
\end{document}
答案1
两个选项:
在职的里面环境
axis
下,可以使用原生的图层系统pgfplots
配合rel axis
坐标系来添加阴影(需要clip=false
):\documentclass{article} \usepackage{pgfplots} \usetikzlibrary{shadows} \begin{document} \begin{tikzpicture} \begin{axis}[set layers,clip=false] \addplot {x^2}; \draw[fill=white, drop shadow,on layer=axis background] (rel axis cs:0,0) rectangle (rel axis cs:1,1); \end{axis} \end{tikzpicture} \end{document}
在职的外部环境
axis
中,您可以命名轴,然后使用该名称使用 tikzbackgrounds
库将阴影放置在背景上:\documentclass{article} \usepackage{pgfplots} \usetikzlibrary{shadows,backgrounds} \begin{document} \begin{tikzpicture} \begin{axis}[name=myaxis] \addplot {x^2}; \end{axis} \begin{pgfonlayer}{background} \draw[fill=white, drop shadow] (myaxis.north west) rectangle (myaxis.south east); \end{pgfonlayer} \end{tikzpicture} \end{document}
顺便提一下,pgfplots
内部加载 TikZ,因此加载前者时无需加载后者。该类minimal
旨在使用经典的“Hello world!”之类的东西来测试安装。我建议您不要将其用于比这更复杂的事情。