-页多图–viewport(ggplot2)

par应该是graphics 包中的函数,只能对这个包中生成的device做调整,对其他包中的作图device不能调整吧,所以par对ggplot没有作用。ggplot调用的是grid.其关键概念是视图窗口:显示设备的一个矩形子区域。默认的视图窗口占据了整个绘图区域,通过视图窗口,你可以安排任意多福图形的位置。若想一页多图,最简单的方式就是创建图形并将图形赋成变量,这样就只用考虑这个变量的摆放位置了。

一、viewport

# 只占了图形设备一半的宽和高的视图窗口, 定位在图形的中间位置located in

# 一个2cm x 3cm 的视图窗口,定位在图形设备中心

#在右上角的视图窗口

# 处在左下角

注意需要使用pdf()或png()将图形存储在磁盘中,因为ggsave()只能存储一张图。

自动分区――grid.layout() 将三幅图形分置在一页上

polishing-layout

二、facet_grid

定义每行每列图的个数

# These will have the same result: 2 rows and 4 cols
p + facet_wrap( ~ class, nrow=2)
p + facet_wrap( ~ class, ncol=4)

每张子图的坐标系大小自定义

# The base plot
p = ggplot(mpg, aes(x=displ, y=hwy)) + geom_point()
# With free y scales
p + facet_grid(drv ~ cyl, scales=”free_y”)
# With free x and y scales
p + facet_grid(drv ~ cyl, scales=”free”)

改变子图的标签

改变子图标签的背景色

三、添加文字

 

参考资料:
ggplot2:数据分析与图形艺术

发表评论

电子邮件地址不会被公开。 必填项已用*标注