问题
我刚刚升级到 1.9。Christian 建议不要使用\pgfplotsset{compat=newest}
,但这样就不得不compat=x.y
在很长一段时间内多次返回并更新项目。我意识到如果项目最初有效,则没有必要,但情况并非总是如此。我的许多项目都被重复使用和改进。但是,如果真的没有更好的选择,那也没什么大不了的。compat=newest
如果有的话,什么会被视为 的有效用途。并且,是这个还是那个 -compat=x.y
还是compat=newest
?
结论
Christian 的回答主要讲的是能够根据每个项目设置最高版本的实用性,不仅如此,它还强调了可以推荐合适版本的内置功能。尽管如此,最后一段很有说服力。最好设置为您compat
目前知道可以提供所需内容的最新版本。如果您使用最新版本,则似乎最新版本是个好主意,但情况并非总是如此。
具有compat=newest
讽刺意味的是,似乎没有“可以做”的事情。“可以做”适用于其他设置compact
及其提供的设施。
答案1
作为软件用户pgfplots
,我不想冒着软件包更新导致现有图像结果不同的风险。因此,即使软件包作者决定对“新”文档进行某些更改,我也希望有机会“保留”我的输出。另一种方法是浏览整个文档以查看是否发生了任何“明显”的变化。我希望不会发生此类变化,即使图像上的单独视图清楚地证实了更改是由错误修复引起的。
另一方面,作为作者,我pgfplots
需要自由地对软件进行更改,无论是因为新功能还是为了修复错误。我有兴趣维护用户创建的现有解决方法,无论是由于pgfplots
缺乏对某些内容的支持还是因为pgfplots
存在错误而产生的解决方法。软件包更新不应使旧的解决方法失效,但应为所有“从头开始编写文档”的用户提供修复。
选择合适的\pgfplotsset{compat=<version>}
标志是解决两种用例的解决方案,并且pgfplots
建议合适的值这一事实<version>
应该使选择它变得更简单。
然而,这种选择compat=newest
会破坏这两种用例:两者都会遭受严重损失。
可能存在一种情况,其中向后兼容性并不重要 - 这就是compat=newest
用例。就我个人而言,我不知道用例是什么。选择compat=newest
意味着“我不在乎我的旧人物在下一次版本升级后外观是否发生变化”。