pgfplots 和背景库

pgfplots 和背景库

当我使用tikz 库framed中的选项backgrounds作为轴环境时,此示例可以正常工作:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usepackage{pgfplots}
\usetikzlibrary{backgrounds}
\begin{document}
\begin{tikzpicture}

\begin{axis}[grid=both]
\end{axis}

\begin{axis}[xshift=2cm,yshift=3cm,width=4cm,framed]
\end{axis}

\end{tikzpicture}
\end{document}

在此处输入图片描述

但对于更复杂的背景样式,就像 background rectangle/.style={draw=red,fill=white},show background rectangle 什么都没有发生一样(但是子图周围的框架仍然出现)。

axis如果我使用环境包装到额外的内容中tikzpicture,就像这样:

\begin{tikzpicture}

\begin{axis}[grid=both]
\end{axis}

\begin{tikzpicture}[background rectangle/.style={draw=red,fill=white},
    show background rectangle]
  \begin{axis}[xshift=2cm,yshift=3cm,width=4cm]
  \end{axis}
\end{tikzpicture}

\end{tikzpicture}

背景正常,但定位失败。

我怎样才能将背景与 pgfplots 一起使用?

类似的问题:如何将多个轴的背景一起使用(这对于一个图中不同的左右轴很有用)。

答案1

提供给环境的选项axis位于/pgfplots密钥树中,但backgrounds选项必须以 的形式提供/tikz/background/.style={}。您的示例因此将如下所示:

\documentclass{article}
\usepackage{pgfplots}
\usetikzlibrary{backgrounds}
\begin{document}
\begin{tikzpicture}

\begin{axis}[grid=both]
\end{axis}


\begin{axis}[
    xshift=2cm,
    yshift=3cm,
    width=4cm,
    /tikz/background rectangle/.style={
        fill=yellow,
        draw=blue
    },
    show background rectangle]
\end{axis}

\end{tikzpicture}
\end{document}

带背景的 pgfplots 轴

相关内容