更新我的 MiKTeX 发行版后,我突然收到一个编译错误,而之前编译完全没问题的 .tex 文件。删除所有不会导致错误的内容后,我得到了以下最小示例:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shapes}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\node[shape=rounded rectangle, draw=black] {bla};
\end{tikzpicture}
\end{document}
如果我使用rectangle
或者rounded rectangle
删除 pgfplots 包,一切都会正常运行。
作为一种解决方法,我现在正在使用rectangle
该rounded corners
属性,但我想知道是否也可以rounded rectangle
与 pgfplots 一起使用(如果可以,如何使用)。
我的 pgfplots 包的版本是 1.11。使用 MiKTeX 包管理器检查我的 pgf 包的版本时,它显示版本 3.0.0。但是,检查日志文件时,它显示使用的是版本 2.10。
为了完整起见:此外,我在 Windows 7 Professional(Service Pack 1)操作系统上使用 MiKTeX-pdfTeX 2.9.4902(1.40.14)(MiKTeX 2.9)。
我通过上述示例收到的错误消息是:
! Undefined control sequence.
<recently read> \pgfmath@multiply@thousand
l.12 ...hape=rounded rectangle, draw=black] {bla};
在搜索相关问题时,我在这里发现了其他问题:
Miktex 2.9 pgfplots,circuitikz 库碰撞问题
这似乎是同一种疾病的不同症状的情况(正如元文章中讨论的那样:同一种疾病,不同的症状)。至少错误信息是一样的,情况(更新后出现的问题)也类似。
我最初认为那里的解决方案不适用于我的问题,因为我有 1.11 版的 pgfplots 和 3.0.0 版的 pgf(根据后一个问题的可接受答案,它们应该可以工作)。但是,通过检查日志文件,发现实际上使用的是 2.10 版的 pgf。因此,潜在问题似乎与两个相关问题中的前一个相同。包管理器和日志文件之间的这种差异是如何产生的,我该如何修复它?
答案1
根据 MikTeX 实际上未能将 PGF 更新至 3.0.0 的信息,我可以确认这是在 pgfplots 中使用 atan 的问题和Miktex 2.9 pgfplots,circuitikz 库碰撞问题。
我会更新在 pgfplots 中使用 atan 的问题提供解决方法。
实际上存在两个不同的问题:
我引入了 1.11 和 PGF 2.10 之间的不兼容性
pgfplots
。对此我深感抱歉;pgfplots 的下一个版本将提供解决方案(计划于 2015 年初推出)。据报道,MikTeX 声称会更新到 PGF 3.0.0,但实际上并没有。如果两个软件包都是当前稳定版本,那么一切都会正常。我不知道这个更新问题的详细信息。
请参见在 pgfplots 中使用 atan 的问题寻找可能的解决方法。