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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。