我遇到了一些行为,当我使用coord_fixed(ratio = 1)
时,knitr会切断ggplot2图像的一部分。
---
title: "mwe"
output: pdf_document
---
```{r}
library(ggplot2)
data <- list(
x1 = 0:6,
y1 = 0,
x2 = rep(0:6, 2),
y2 = rep(c(0, 1), each = 7) * -1,
labels = paste("Label", 1:7)
)
g <- ggplot() + geom_text(aes(0:6, 0.75), label = data$labels)
g_unfixed_1 <- g + geom_raster(aes(data$x1, data$y1))
g_fixed_1 <- g_unfixed_1 + coord_fixed(ratio = 1)
g_unfixed_2 <- g + geom_raster(aes(data$x2, data$y2))
g_fixed_2 <- g_unfixed_2 + coord_fixed(ratio = 1)
g_unfixed_1
g_fixed_1
g_unfixed_2
g_fixed_2
```
通过以下调用,我可以看到g_fixed_1
的上边距与g_fixed_2
的上边距相比略有减少:
rmarkdown::render("mwe.Rmd", clean = F)
我看了knitr制作的PDF,图的顶部被g_fixed_1
剪断了:
与g_fixed_2
(两行数据)相比:
答案 0 :(得分:0)
我有同样的问题,并使用以下方法解决了该问题:
p + scale_y_continous(limits = c(0, max(value)*1.1))
在我的示例中,我在一个绘图文件上进行了循环,如下所示:
for(n in names(tabla)) {
plots_ms[[n]] +
scale_y_continuous(limits = c(0, max(plots_ms[[n]]$data$ms)*1.1))
}