【问题标题】:ggplot2/knitr: geom_col shows breaks in PDF but not in RStudio/HTMLggplot2/knitr:geom_col 在 PDF 中显示中断,但在 RStudio/HTML 中不显示
【发布时间】:2018-05-17 15:48:38
【问题描述】:

当在织成 pdf 的 R Markdown 报告中包含带有 geom_col 的图时,观察之间的堆叠中断显示为灰线:

```{r}
library(ggplot2)

ggplot(data = midwest) +
  geom_col(mapping = aes(x = state, y = poptotal))
```

但是当我直接在 R Studio 中运行完全相同的代码(或编织到 HTML)时,列显示为实心:

是否有什么特别的事情要做以使不同的观察结果不显示在 pdf 中(例如,使 pdf 编织图看起来像 HTML 编织图)?

【问题讨论】:

  • 如果在geom_col 中设置colour = NA 会发生什么?或者在使用 ggplot 之前计算总和
  • 如果它有助于解决您的问题,请考虑接受答案 :)

标签: r ggplot2 knitr


【解决方案1】:

您是否尝试过使用geom_bar() 而不是geom_col(),因为geom_col() 是后来创建的,它基本上只有geom_bar()

```{r}
library(ggplot2)

ggplot(data = midwest) +
  geom_bar(stat="identity",mapping = aes(x = state, y = poptotal))
```

它可能有效,试试看,让我知道 您也可以设置fill 并检查会发生什么

geom_bar(stat="identity",mapping = aes(x = state, y = poptotal,fill="gray60"))

【讨论】:

  • 编辑:不,使用geom_bar()stat="identity" 具有相同的结果。我可以尝试强制颜色/填充相同,但我希望有一个原因相同的渲染绘图图像 (png) 会因目标介质而不同。
  • 你能显示pdf保存代码吗?我不确定您使用什么功能将其保存为 pdf ......或者它只是“RStudio”中的导出。我尝试从“导出”选项将其保存为 pdf,它对我来说效果很好。我认为您的“R”或“RStudio”可能存在版本错误。如果您运行的是过时版本,请尝试更新它。
  • 我只是在 RStudio 中使用“Knit”按钮。我正在使用最新的 RStudio、R 3.4.4 和 Pandoc 1.19.2.1。
  • 如果将 coord_flip() 添加到绘图中会出现同样的问题吗?
  • 相同的行为:在 knit 为 pdf 时可以看到行分割,但在 knit 为 HTML 时看不到。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-02-19
  • 2018-03-07
  • 1970-01-01
  • 1970-01-01
  • 2021-12-19
  • 2013-11-27
  • 1970-01-01
相关资源
最近更新 更多