我最近(愚蠢地)更新了我所有的 TeXlive 包,包括 pgfplots(从 1.10 到 1.11)。
我现在遇到了 groupplots 和 fillbetween 库的问题,使用 fillbetween 库 1) 不起作用并且 2) 破坏了组图的对齐。
梅威瑟:
\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}
\usepgfplotslibrary{fillbetween,groupplots}
\begin{document}
\begin{tikzpicture}[trim axis group left]
\begin{groupplot}[%
group style={%
group size=1 by 2,
vertical sep=0pt,
x descriptions at=edge bottom},
width=11.5cm,
scale only axis,
xmin=-1.8,
xmax=1.8,
/pgf/number format/use comma,
xlabel={Y [mm]},
]
\nextgroupplot[height=2.49166666667cm,ylabel={Z [mm]},y label style={at={(axis description cs:-0.08,.5)}},ymin=-0.59,ymax=0.19]
\nextgroupplot[ylabel={$\kappa$ [mm$^{-1}$]},y label style={at={(axis description cs:-0.08,.5)}},ymin=-12,ymax=8,height=6cm]
\addplot[color=green,solid,name path=mittemin] coordinates {(-1.8,-10) (1.8,-10)};
\addplot[color=green,solid,name path=mittemax] coordinates {(-1.8,-1.5) (1.8,-1.5)};
\addplot[color=green,solid,name path=randmin] coordinates {(-1.8,0.9) (1.8,0.9)};
\addplot[color=green,solid,name path=randmax] coordinates {(-1.8,6.5) (1.8,6.5)};
\addplot[green!20] fill between[of=mittemin and mittemax];
\addplot[green!20] fill between[of=randmin and randmax];
\end{groupplot}
\end{tikzpicture}
\end{document}
这将产生以下结果(无填充,对齐破坏):
注释掉(不起作用的)fill between
语句后,对齐又正确了:
pgfplots 1.10 中没有出现这种情况。设置compat=1.10
不会改变输出。据我所知,1.11 版的 fillbetween 库中发生了一些变化,这是一个错误还是我遗漏了什么?
编辑:
我降级到 pgfplots 1.10,解决了这个问题(对于有同样问题的人:通过卸载旧版本tlmgr
,下载它这里,将其解压到TEXMFLOCAL
并运行mktexlsr
)。因此,该问题似乎仅与 pgfplots 有关,我将就此问题询问 Christian Feuersänger。