我最近注意到,相同的 R markdown 文档在不同条件下(例如不同的项目)运行时会生成不同的图。作为一个玩具示例,请考虑以下文档:
---
title: "Example"
output:
html_document
---
```{r plot, warning=FALSE, echo=FALSE}
library("tidyverse")
tibble(mu = c(-9.4, -9.3, -9.2, -9, -8.9, -8.8, -8.7, -8.5, -8.4, -8.3, 0),
N = c(1, 2, 1, 1, 1, 3, 1, 1, 1, 1, 3)) %>%
ggplot() +
geom_point(aes(x=mu, y=N)) +
geom_bar(aes(x=mu, y=N), stat="identity", fill="grey", colour="black", width=0.1) +
theme(panel.background=element_blank(),
axis.title=element_text(size=20),
axis.text=element_text(size=15))
```
它应该产生一个类似以下的情节,有时我会成功并得到它:
然而,其他时候,我得到这个替代版本,这是无稽之谈:
我注意到加载 tidyverse 包后,有些版本是不同的。例如,第一个 ggplot 是 3.2.1,而后一个是 3.3.0。这稍后具有不同的版本号,因为它在使用 Renv 的 R 项目中单独维护。
好的,可能是不同的版本号?即使考虑到我很久以前就知道这个包的这些不同版本,我也很难理解在任何ggplot 版本中给定这个代码是如何生成第二个图的。如果不是版本号,是否有任何可能导致此问题的提示?