【发布时间】:2018-04-18 18:55:05
【问题描述】:
我写中的R与降价一个pdf输出的报告。我有几个情节,我想每个网页上显示四个图在一个2x2矩阵布局。有没有一种方法,让他们像显示与独立的字幕? P>
这是我迄今为止尝试过的:
-
包gridExtra - ?我可以很容易地设置布局我想,但我没能字幕添加到plots.Is有一个选项,以字幕添加到
grid.arrangeP>剧情 -
放置各小区在不同的块和有R块选择播放。基本上设置
out.width='.49\\linewidth', fig.align='right'和fig.align='left'替代地。在这里,我可以单独设置字幕与fig.cap但该地块始终显示在单独的页面。 -
我试图用
fig.width玩,fig.height选项,并能够让他们到显示在同一页面上各自的左侧或页的右侧。然而,标题总是发生在中心的整个页面宽度和住宿,而不是与剧情大小包裹。有没有一种方法,使字幕跟随剧情大小规则?
这是一个示例代码:
```{r, echo=FALSE, cache=FALSE, results=FALSE, warning=FALSE, comment=FALSE, message= FALSE, eval =T, fig.height= 9}
p1<- ggplot(mpg, aes(displ, hwy, colour = class)) +
geom_point()+
labs(caption = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. ")+
theme(plot.caption = element_text(hjust = 0.5))
p2<- ggplot(mpg, aes(displ, hwy, colour = class)) +
geom_point()+
labs(caption = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. ")+
theme(plot.caption = element_text(hjust = 0.5))
p3<- ggplot(mpg, aes(displ, hwy, colour = class)) +
geom_point()+
labs(caption = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. ")+
theme(plot.caption = element_text(hjust = 0.5))
p4<- ggplot(mpg, aes(displ, hwy, colour = class)) +
geom_point()+
labs(caption = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. ")+
theme(plot.caption = element_text(hjust = 0.5))
library(gridExtra)
grid.arrange(p1,p2,p3,p4)
```
【问题讨论】:
-
在每个ggplot的端部可以加字幕这样然后使用gridExtra -
labs(caption = "Hi world")跨度> -
谢谢,我试过了刚才。它的工作原理除了所有字幕都在彼此的顶部。有没有一种方法,以整齐地包裹积下的字幕? SPAN>
-
您可以分享您的代码/数据,所以我可以看到这个问题? SPAN>
-
如果你只是试图总结在标题中的文本,你可以做到这一点
labs(caption = "Hi \nworld")。成\ n将把世界上第二行跨度> -
如果你只想PDF输出,你可以检查出使用sibfigure stackoverflow.com/a/49086985/7347699的 SPAN>
标签: r-markdown gridextra