当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R splom 散点图矩阵


R语言 splom 位于 lattice 包(package)。

说明

绘制条件散点图矩阵和平行坐标图

用法

splom(x, data, ...)
parallelplot(x, data, ...)

## S3 method for class 'formula'
splom(x,
      data,
      auto.key = lattice.getOption("default.args")$auto.key,
      aspect = 1,
      between = list(x = 0.5, y = 0.5),
      panel = lattice.getOption("panel.splom"),
      prepanel,
      scales,
      strip,
      groups,
      xlab,
      xlim,
      ylab = NULL,
      ylim,
      superpanel = lattice.getOption("panel.pairs"),
      pscales = 5,
      varnames = NULL,
      drop.unused.levels,
      ...,
      lattice.options = NULL,
      default.scales,
      default.prepanel = lattice.getOption("prepanel.default.splom"),
      subset = TRUE)
## S3 method for class 'formula'
parallelplot(x,
         data,
         auto.key = lattice.getOption("default.args")$auto.key,
         aspect = "fill",
         between = list(x = 0.5, y = 0.5),
         panel = lattice.getOption("panel.parallel"),
         prepanel,
         scales,
         strip,
         groups,
         xlab = NULL,
         xlim,
         ylab = NULL,
         ylim,
         varnames = NULL,
         horizontal.axis = TRUE,
         drop.unused.levels,
         ...,
         lattice.options = NULL,
         default.scales,
         default.prepanel = lattice.getOption("prepanel.default.parallel"),
         subset = TRUE)

## S3 method for class 'data.frame'
splom(x, data = NULL, ..., groups = NULL, subset = TRUE)
## S3 method for class 'matrix'
splom(x, data = NULL, ..., groups = NULL, subset = TRUE)

## S3 method for class 'matrix'
parallelplot(x, data = NULL, ..., groups = NULL, subset = TRUE)
## S3 method for class 'data.frame'
parallelplot(x, data = NULL, ..., groups = NULL, subset = TRUE)

参数

x

对其执行方法分派的对象。

对于 "formula" 方法,说明绘图结构的公式,其形式应为 ~ x | g1 * g2 * ... ,其中 x 是 DataFrame 或矩阵。每个 g1,g2,... 必须是因子或带状疱疹。条件变量g1, g2, ...可以省略。

对于 data.frame 方法,数据帧。

data

对于 formula 方法,一个可选 DataFrame ,其中将评估公式中的变量(以及 groupssubset,如果有的话)。

aspect

每个面板(和子面板)的长宽比,splom 默认为正方形。

between

为了避免面板和子面板之间的混淆,默认情况下显示 splom 图的面板,面板之间留有空间。

panel

对于 parallelplot ,这具有通常的解释,即在每个面板中创建显示的函数。

对于 splom ,术语稍微复杂。面板函数在大多数其他高级函数中所扮演的角色在这里由 superpanel 函数扮演,该函数负责显示每个条件数据子集。 panel 只是默认 superpanel 函数 panel.pairs 的参数,并按原样传递给它。它用于创建每个成对显示。有关更多有用的选项,请参阅panel.pairs

superpanel

设置 splom 显示的函数,默认为散点图矩阵。

pscales

数值或列表,旨在作为 xyplot 等中的 scales 参数的函数较少的替代品。此参数传递给 superpanel 函数,并由默认的超级面板函数 panel.pairs 处理。后者的帮助页面更详细地记录了这一论点。

varnames

字符或表达式向量或给定用于 x 中的变量的名称。默认情况下,列名称为 x

horizontal.axis

逻辑指示平行轴是否应水平布置(TRUE)或垂直布置(FALSE)。

auto.key , prepanel , scales , strip , groups , xlab , xlim , ylab , ylim , drop.unused.levels , lattice.options , default.scales , subset

请参阅xyplot

default.prepanel

后备预面板函数。请参阅xyplot

...

进一步的论证。有关重要细节,请参阅 xyplot 中的相应条目。

细节

splom 生成散点图矩阵。通常由 panel 扮演的角色由 superpanel 接管,它采用数据帧子集并负责绘制它。调用它时,坐标系设置为从 0.5ncol(z) + 0.5 都有 x- 和 y-limits 。当前唯一可用的内置选项是 panel.pairs ,它为 z 中以 c(i, j) 为中心的单位宽度和高度的矩形内的每对 (i, j) 变量调用进一步的面板函数(请参阅 panel.pairs 了解更多信息)细节)。

许多更精细的自定义通常通过高级函数(如 xyplot )的参数完成,而是由 panel.pairs for splom 完成。其中包括轴限制、刻度位置和预面板计算的控制。如果您尝试fine-tune您的splom绘图,请务必查看panel.pairs帮助页面。 scales 参数在 splom 中通常不是很有用,并且尝试更改它可能会产生不良效果。

parallelplot 绘制平行坐标图。 (很难说明,请参见示例。)

这些和所有其他高级网格函数有几个共同的参数。这些仅在 xyplot 的帮助页面中进行了大量记录,应查阅该页面以了解更详细的用法。

"trellis" 的对象。 update 方法可用于更新对象的组件,print 方法(通常默认调用)会将其绘制在适当的绘图设备上。

例子

super.sym <- trellis.par.get("superpose.symbol")
splom(~iris[1:4], groups = Species, data = iris,
      panel = panel.superpose,
      key = list(title = "Three Varieties of Iris",
                 columns = 3, 
                 points = list(pch = super.sym$pch[1:3],
                 col = super.sym$col[1:3]),
                 text = list(c("Setosa", "Versicolor", "Virginica"))))
splom(~iris[1:3]|Species, data = iris, 
      layout=c(2,2), pscales = 0,
      varnames = c("Sepal\nLength", "Sepal\nWidth", "Petal\nLength"),
      page = function(...) {
          ltext(x = seq(.6, .8, length.out = 4), 
                y = seq(.9, .6, length.out = 4), 
                labels = c("Three", "Varieties", "of", "Iris"),
                cex = 2)
      })
parallelplot(~iris[1:4] | Species, iris) 
parallelplot(~iris[1:4], iris, groups = Species,
             horizontal.axis = FALSE, scales = list(x = list(rot = 90)))

作者

Deepayan Sarkar Deepayan.Sarkar@R-project.org

也可以看看

xyplotLatticepanel.pairspanel.parallel

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Scatter Plot Matrices。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。