layout
位于 graphics
包(package)。 说明
layout
将设备划分为与矩阵 mat
中一样多的行和列,并在相应参数中指定 column-widths 和 row-heights。
用法
layout(mat, widths = rep.int(1, ncol(mat)),
heights = rep.int(1, nrow(mat)), respect = FALSE)
layout.show(n = 1)
lcm(x)
参数
mat |
指定输出设备上下一个 |
widths |
设备上列宽度值的向量。相对宽度用数值指定。绝对宽度(以厘米为单位)由 |
heights |
设备上行高值的向量。可以指定相对和绝对高度,请参阅上面的 |
respect |
逻辑值或矩阵对象。如果是后者,则它必须具有与 |
n |
要绘制的图形数量。 |
x |
被解释为厘米数的尺寸。 |
细节
根据 mat
中 出现的行和列,为图 分配由这些行和列的子集组成的区域。
respect
参数控制单元 column-width 是否与设备上的单元 row-height 具有相同的物理测量值。
布局中的行数和列数以及单元格总数 (10007) 存在限制(当前为 200)。
layout.show(n)
绘制(部分)当前布局,即下一个n
图形的轮廓。
lcm
是一个简单的函数,用作指定 layout()
的 widths
和 heights
参数的绝对尺寸的接口。
值
layout
返回数字的数量, ,见上文。
警告
这些函数与在设备上排列绘图的其他机制完全不兼容: par(mfrow)
、 par(mfcol)
和 split.screen
。
例子
def.par <- par(no.readonly = TRUE) # save default, for resetting...
## divide the device into two rows and two columns
## allocate figure 1 all of row 1
## allocate figure 2 the intersection of column 2 and row 2
layout(matrix(c(1,1,0,2), 2, 2, byrow = TRUE))
## show the regions that have been allocated to each plot
layout.show(2)
## divide device into two rows and two columns
## allocate figure 1 and figure 2 as above
## respect relations between widths and heights
nf <- layout(matrix(c(1,1,0,2), 2, 2, byrow = TRUE), respect = TRUE)
layout.show(nf)
## create single figure which is 5cm square
nf <- layout(matrix(1), widths = lcm(5), heights = lcm(5))
layout.show(nf)
##-- Create a scatterplot with marginal histograms -----
x <- pmin(3, pmax(-3, stats::rnorm(50)))
y <- pmin(3, pmax(-3, stats::rnorm(50)))
xhist <- hist(x, breaks = seq(-3,3,0.5), plot = FALSE)
yhist <- hist(y, breaks = seq(-3,3,0.5), plot = FALSE)
top <- max(c(xhist$counts, yhist$counts))
xrange <- c(-3, 3)
yrange <- c(-3, 3)
nf <- layout(matrix(c(2,0,1,3),2,2,byrow = TRUE), c(3,1), c(1,3), TRUE)
layout.show(nf)
par(mar = c(3,3,1,1))
plot(x, y, xlim = xrange, ylim = yrange, xlab = "", ylab = "")
par(mar = c(0,3,1,1))
barplot(xhist$counts, axes = FALSE, ylim = c(0, top), space = 0)
par(mar = c(3,0,1,1))
barplot(yhist$counts, axes = FALSE, xlim = c(0, top), space = 0, horiz = TRUE)
par(def.par) #- reset to default
作者
Paul R. Murrell
参考
Murrell, P. R. (1999). Layouts: A mechanism for arranging plots on a page. Journal of Computational and Graphical Statistics, 8, 121-134. doi:10.2307/1390924.
Chapter 5 of Paul Murrell's Ph.D. thesis.
Murrell, P. (2005). R Graphics. Chapman & Hall/CRC Press.
也可以看看
par
带有参数 mfrow
、 mfcol
或 mfg
。
相关用法
- R legend 将图例添加到绘图中
- R locator 图形输入
- R lines 将连接的线段添加到绘图中
- R barplot 条形图
- R plot.histogram 绘制直方图
- R points 向绘图添加点
- R stem 茎叶图
- R mtext 将文本写入绘图的边距
- R arrows 将箭头添加到绘图中
- R contour 显示轮廓
- R pairs 散点图矩阵
- R stars 星图(蜘蛛图/雷达图)和线段图
- R box 在地块周围画一个方框
- R coplot 调节图
- R smoothScatter 具有平滑密度颜色表示的散点图
- R mosaicplot 马赛克图
- R bxp 从摘要中绘制箱线图
- R plot.raster 绘制光栅图像
- R axTicks 计算轴刻度线位置
- R curve 绘制函数图
- R plot.factor 绘制因子变量
- R sunflowerplot 制作向日葵散点图
- R plot.table 表对象的绘图方法
- R units 图形单位
- R identify 识别散点图中的点
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Specifying Complex Plot Arrangements。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。