如何将 tikzscale 与 pgfplots fillbetween 库一起使用

如何将 tikzscale 与 pgfplots fillbetween 库一起使用

我依靠 tikzscale 包来方便地将所有 pgfplots 缩放到正确的大小。但是,我最近遇到了一个问题,即这似乎不适用于 fillbetween 库。有没有解决这个问题的办法,最好还是使用 tikzscale?

也可以看看:pgfplots 中 fillbetween 的缩放问题


MWE 显示问题:

这个情节编译得很好。

\documentclass{standalone}

\usepackage{pgfplots}
\pgfplotsset{compat=1.14}
\usepgfplotslibrary{fillbetween}

\begin{document}

\begin{tikzpicture}
\begin{axis}[xmin=0,
xmax=3500,
ymin=0,
ymax=2000000000]%,

\addplot [name path=lower,color=red,dotted]
  table[row sep=crcr]{ 
200 1e7\\
1000 1e8\\
3000 1e8\\
};

\addplot [name path=upper,color=red,dotted]
  table[row sep=crcr]{ 
200 1e8\\
1000 2e8\\
3000 1e9\\
};

\addplot+[red, opacity=0.4] 
fill between[of=upper and lower];

\end{axis}
\end{tikzpicture}

\end{document}

正确的情节

但是,如果我使用 tikzscale,将 tikzpicture-environment 不做任何更改地放在文件中figure1.tikz并使用此代码,就会发生奇怪的事情:

\documentclass{standalone}

\usepackage{pgfplots}
\usepackage{tikzscale}
\pgfplotsset{compat=1.14}
\usepgfplotslibrary{fillbetween}

\begin{document}
\includegraphics[width=10cm]{figure1.tikz}

\end{document}

填充区域不会停留在边界内,而是会忽略某些点。

错误的情节

答案1

我可以通过将当前版本的 tikz/pgf 安装到我的本地 texmf 来解决这个问题。

相关内容