我正在使用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}
结果
我目前的解决方法是将所有内容绘制到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}
结果