PGFlots 填充层与主层之间的问题

PGFlots 填充层与主层之间的问题

我正在使用fill between创建一些图表,其中需要在绘制线上方使用半透明填充。由于通常将填充物放在pre main绘图线下方的单独层中,因此我尝试通过 移动填充物on layer=main。它们消失了?我不知道这种行为是否是故意的。我可以在除此层之外的任何其他层上绘制它们。请参阅下面的最小示例:

\documentclass[]{article} 
\usepackage{pgfplots} 
\pgfplotsset{compat=1.14}
\usepgfplotslibrary{fillbetween}

\begin{document}    
    \begin{tikzpicture}
        \begin{axis}
            \addplot+[name path=A,domain=0:1,samples=10] {x};
            \addplot+[name path=B,domain=0:1, samples=10] {x^2};
            \addplot fill between[of=A and B, on layer=main];
        \end{axis}
    \end{tikzpicture}       
\end{document}

结果

更改 <code>on layer=main</code> 即可看到填充

我目前的解决方法是将所有内容绘制到pre main图层上。

编辑:

\addplot在语句的一部分中给出选项根本没有任何效果:

\documentclass[]{article} 
\usepackage{pgfplots} 
\pgfplotsset{compat=1.14}
\usepgfplotslibrary{fillbetween}

\begin{document}

\begin{tikzpicture}
    \begin{axis}[domain=0:1]
        \addplot+[name path=A, draw=none, mark=none] {x};
        \addplot+[name path=B, draw=none, mark=none] {x^2};
        \addplot+[draw=black, mark=none] {x-0.1};
        \addplot [on layer=axis foreground, fill=green] fill between[of=A and B];
        \addplot+[draw=blue, mark=none] {x-0.15};                       
    \end{axis}
\end{tikzpicture}
\end{document}

结果

没有效果

相关内容