當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R pairs 散點圖矩陣


R語言 pairs 位於 graphics 包(package)。

說明

生成散點圖矩陣。

用法

pairs(x, ...)

## S3 method for class 'formula'
pairs(formula, data = NULL, ..., subset,
      na.action = stats::na.pass)

## Default S3 method:
pairs(x, labels, panel = points, ...,
      horInd = 1:nc, verInd = 1:nc,
      lower.panel = panel, upper.panel = panel,
      diag.panel = NULL, text.panel = textPanel,
      label.pos = 0.5 + has.diag/3, line.main = 3,
      cex.labels = NULL, font.labels = 1,
      row1attop = TRUE, gap = 1, log = "",
      horOdd = !row1attop, verOdd = !row1attop)

參數

x

以矩陣或 DataFrame 的數字列形式給出的點的坐標。邏輯列和因子列以與 data.matrix 相同的方式轉換為數字。

formula

公式,例如 ~ x + y + z 。每個項都會在對圖中給出一個單獨的變量,因此項應該是數值向量。 (響應將被解釋為另一個變量,但不會進行特殊處理,因此使用一個變量會令人困惑。)

data

data.frame(或列表),應從中獲取formula中的變量。

subset

一個可選向量,指定用於繪圖的觀測值子集。

na.action

一個函數,指示當數據包含 NA 時應該發生什麽。默認情況下是將缺失值傳遞給麵板函數,但 na.action = na.omit 將導致任何變量中缺失值的情況被完全忽略。

labels

變量的名稱。

panel

function(x, y, ...) 用於繪製顯示屏每個麵板的內容。

...

傳入或傳出方法的參數。

此外,graphical parameters 可以作為 plot 的參數給出,例如 main 。除非指定,否則 par("oma") 將被適當設置。

horInd, verInd

分別在水平軸和垂直軸上繪製的變量的(數字)索引。

lower.panel, upper.panel

分別在對角線下方和上方使用單獨的麵板函數(或 NULL )。

diag.panel

可選的function(x, ...)應用於對角線。

text.panel

可選的function(x, y, labels, cex, font, ...)應用於對角線。

label.pos

y 文本麵板中標簽的位置。

line.main

如果指定了 mainline.main 會將 line 參數傳遞給繪製標題的 mtext()。您可能需要在更改 line.main 時指定 oma

cex.labels, font.labels

文本麵板的圖形參數。

row1attop

合乎邏輯的。布局應該是第 1 行在頂部的矩陣式布局,還是第 1 行在底部的graph-like?後者(非默認)會產生基本對稱的散點圖矩陣。

gap

子圖之間的距離(以邊線為單位)。

log

指示是否使用對數軸的字符串,請參閱 plot.default 或索引的數字向量,指定那些變量的索引,其中對數軸應用於 x 和 y。 log = "xy" 指定所有變量的對數軸。

horOdd, verOdd

logical(或整數)確定水平軸和垂直軸標記如何發生。如果為 true,則軸標簽分別從第一行(從左上角開始)或第一列開始。

細節

散點圖包含針對 x[,j] 繪製的 x[,i] 。可以通過設置麵板函數來自定義散點圖,使其顯示為完全不同的東西。非對角麵板函數通過 x 的相應列作為 xy :對角麵板函數(如果有)通過單個列傳遞,text.panel 函數通過單個 (x, y) 位置和列名稱。將其中一些麵板函數設置為 NULL 相當於不在那裏繪製任何內容。

graphical parameters pchcol 可用於指定繪圖符號和要在繪圖中使用的顏色的向量。

除非作為參數提供,否則graphical parameter oma 將由pairs.default 設置。

麵板函數不應嘗試開始新繪圖,而應僅在給定坐標係內進行繪圖:因此 plotboxplot 不是麵板函數。

默認情況下,缺失值會傳遞給麵板函數,並且通常會在麵板中被忽略。但是,對於公式方法和 na.action = na.omit ,所有包含任何變量缺失值的情況都將被完全忽略(包括選擇尺度時)。

參數horIndverInd被介紹於R3.2.0。如果給定相同的值,它們可用於選擇或重新排序變量:具有不同範圍的連續值,它們可用於繪製完整對圖的矩形窗口;在後一種情況下,‘diagonal’ 指的是整個圖的對角線。

例子

pairs(iris[1:4], main = "Anderson's Iris Data -- 3 species",
      pch = 21, bg = c("red", "green3", "blue")[unclass(iris$Species)])

## formula method, "graph" layout (row 1 at bottom):
pairs(~ Fertility + Education + Catholic, data = swiss, row1attop=FALSE,
      subset = Education < 20, main = "Swiss data, Education < 20")

pairs(USJudgeRatings, gap=1/10) # (gap: not wasting plotting area)
## show only lower triangle (and suppress labeling for whatever reason):
pairs(USJudgeRatings, text.panel = NULL, upper.panel = NULL)

## put histograms on the diagonal
panel.hist <- function(x, ...)
{
    usr <- par("usr")
    par(usr = c(usr[1:2], 0, 1.5) )
    h <- hist(x, plot = FALSE)
    breaks <- h$breaks; nB <- length(breaks)
    y <- h$counts; y <- y/max(y)
    rect(breaks[-nB], 0, breaks[-1], y, col = "cyan", ...)
}
pairs(USJudgeRatings[1:5], panel = panel.smooth,
      cex = 1.5, pch = 24, bg = "light blue", horOdd=TRUE,
      diag.panel = panel.hist, cex.labels = 2, font.labels = 2)

## put (absolute) correlations on the upper panels,
## with size proportional to the correlations.
panel.cor <- function(x, y, digits = 2, prefix = "", cex.cor, ...)
{
    par(usr = c(0, 1, 0, 1))
    r <- abs(cor(x, y))
    txt <- format(c(r, 0.123456789), digits = digits)[1]
    txt <- paste0(prefix, txt)
    if(missing(cex.cor)) cex.cor <- 0.8/strwidth(txt)
    text(0.5, 0.5, txt, cex = cex.cor * r)
}
pairs(USJudgeRatings, lower.panel = panel.smooth, upper.panel = panel.cor,
      gap=0, row1attop=FALSE)

pairs(iris[-5], log = "xy") # plot all variables on log scale
pairs(iris, log = 1:4, # log the first four
      main = "Lengths and Widths in [log]", line.main=1.5, oma=c(2,2,3,2))

作者

Enhancements for R 1.0.0 contributed by Dr. Jens Oehlschlägel-Akiyoshi and R-core members.

參考

Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Scatterplot Matrices。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。