自上次更新我的 Miktex 软件包以来,我注意到一种奇怪的交互,我无法解释。也许有人知道。这是 MWE
\documentclass{article}
\usepackage{tikz,pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[unbounded coords=jump, stack plots=y]
\addplot[fill=gray, draw=black] table[]{123.tsv}
\closedcycle;
\addplot[fill=none, draw=black] table[]{123.tsv}
\closedcycle;
\end{axis}
\end{tikzpicture}
\end{document}
我的数据看起来像这样
1 nan
1.2 0.2
0.9 0.1
运行上述程序会产生错误: Undefined control sequence. [\closedcycle;]
如果我执行以下三件事之一,错误就会消失:
取出
unbounded coords=jump
:没有任何明显变化,但没有错误取出
stack plots=y
:情节明显不同取出
nan
数据中的-line:没有任何明显变化,但没有错误
我不想做这两件事(数据和 tikzpicture 应该由 matlab2tikz 创建,我无法告诉它不要生成这些数据)并且在错误下绘制的图片对我来说看起来不错。
但是,我现在遇到了这个错误(并且仅自从上次更新我的软件包以来)。有人知道为什么会产生这个错误,为什么以前没有产生这个错误,以及如何解决它吗?
我尝试过的:
添加
\pgfplotsset{compat=x.x}
: 没有帮助拿走
\closedcycle
:产生未定义的控制序列\addplot
答案1
这可能是pgfplots
PGF 中的一个错误,而不是 PGF 中的一个错误,现在才由于 PGF 的变化而浮出水面,因为如果我简单地定义未定义的控制序列,它就会按预期工作。
\documentclass{article}
\usepackage{tikz,pgfplots}
\makeatletter
\def\pgfplots@stacked@diff{}
\makeatother
\begin{document}
\begin{tikzpicture}
\begin{axis}[unbounded coords=jump, stack plots=y]
\addplot[fill=gray, draw=black] table[]{123.tsv}
\closedcycle;
\addplot[fill=none, draw=black] table[]{123.tsv}
\closedcycle;
\end{axis}
\end{tikzpicture}
\end{document}