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


R Lattice 点阵图形


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

说明

latticeadd-on 包是 Trellis 图形的实现R。它是一个函数强大且优雅的高级数据可视化系统,重点关注多元数据。它旨在以最少的调整满足大多数典型的图形需求,但也可以轻松扩展以处理大多数非标准要求。

细节

Trellis Graphics 最初是在贝尔实验室为 S 和 S-PLUS 开发的,是由 R. A. Becker、W. S. Cleveland 等人开发的数据可视化框架,扩展了 Cleveland 1993 年出版的《可视化数据》一书中提出的思想。 Lattice API基于S中的原始设计,但在很多方面对其进行了扩展。

莱迪思用户接口主要由几个“高级”通用函数(在下面的“See Also”部分列出)组成,每个函数都设计用于默认创建特定类型的显示。尽管这些函数产生不同的输出,但它们具有许多共同的特征,反映在以类似方式影响结果显示的几个共同参数中。这些参数在 xyplot 的帮助页面中进行了广泛(有时仅)记录,其中还包括对格子布局的调节和控制的重要主题的讨论。其他高级函数的特定函数记录在其各自的帮助页面中。

莱迪思采用了广泛的user-controllable设置系统来确定其生成的显示的外观和感觉。要了解如何使用和自定义点阵使用的图形参数,请参阅trellis.par.set。有关其他设置,请参阅lattice.options。对于不同的图形设备,默认图形设置(可能)不同。要了解如何使用所需的设置初始化新设备或更改当前设备的设置,请参阅trellis.device

能够在单个页面上绘制多个点阵图通常是不必要的,但有时很重要。 print.trellis 帮助页面中说明了此类函数。请参阅update.trellis 了解如何操作"trellis" 对象。 trellis.focus 帮助页面中说明了绘制格子图后增强格子图的工具(包括类似 locator 的函数)。

软件包随附的在线文档是完整的,并且已尽力以逻辑顺序呈现帮助页面,以便人们可以通过阅读 https://cran.r-project.org/package=lattice 上提供的 PDF 参考手册来学习如何使用lattice。然而,在线文档的编写格式和涵盖的主题的广度必然使其有些简洁,并且作为初次介绍不太理想。为了更温和的介绍,Springer 的“Use R”系列中有一本关于格子的书;请参阅下面的“References”部分。

注意

高水平lattice函数类似于xyplot与传统的不同R图形函数,因为它们本身不执行任何绘图。相反,它们返回一个类的对象"trellis",那么必须是print-ed 或plot-ted 来创建实际的情节。由于R的自动打印规则,通常不需要显式地进行第二步,并且lattice函数的行为似乎与传统函数类似。然而,当在另一个函数内部调用高级函数时(最常见的是source)或在自动打印被抑制的其他情况下(例如,for或者while循环)。在这种情况下,显式调用print或者plot是必须的。

lattice软件包基于 Grid 图形引擎,需要gridadd-on包。这样做的后果之一是它不(容易)与传统的兼容R图形工具。特别是,改变par()设置通常对格子图没有影响;lattice提供自己的接口来查询和修改大量图形和非图形设置。

例子

## Not run: 

## Show brief history of changes to lattice, including
## a summary of new features.

RShowDoc("NEWS", package = "lattice")

## End(Not run)

作者

Deepayan Sarkar Deepayan.Sarkar@R-project.org

参考

Sarkar, Deepayan (2008) Lattice: Multivariate Data Visualization with R, Springer. ISBN: 978-0-387-75968-5 http://lmdvr.r-forge.r-project.org/

Cleveland, William .S. (1993) Visualizing Data, Hobart Press, Summit, New Jersey.

Becker, R. A. and Cleveland, W. S. and Shyu, M. J. (1996). “The Visual Design and Control of Trellis Display”, Journal of Computational and Graphical Statistics, 5(2), 123-155.

Bell Lab's Trellis Page contains several documents outlining the use of Trellis graphics; these provide a holistic introduction to the Trellis paradigm: http://web.archive.org/web/20081020164041/http://cm.bell-labs.com/cm/ms/departments/sia/project/trellis/display.writing.html

也可以看看

以下是 lattice 包中的高级函数及其默认显示的列表。在所有情况下,实际显示都是由所谓的 “panel” 函数生成的,该函数具有合适的默认值,但可以用用户定义的函数替换以创建自定义显示。在许多情况下,默认面板函数本身有许多可选参数来自定义其输出。默认面板函数命名为“panel.”,后跟相应高级函数的名称;例如,xyplot 的默认面板函数是 panel.xyplothistogram 的默认面板函数是 panel.histogram 等等。每个默认面板函数都有一个单独的帮助页面,从相应高级函数的帮助页面链接。尽管单独记录,但这些面板函数的参数可以直接提供给高级函数,高级函数将适当地传递参数。

单变量:

barchart

条形图。

bwplot

Box-and-whisker 地块。

densityplot

核密度估计。

dotplot

克利夫兰点图。

histogram

直方图。

qqmath

理论分位数图。

stripplot

一维散点图。

双变量:

qq

用于比较两个分布的分位数图。

xyplot

散点图和时间序列图(以及可能更多)。

三变量:

levelplot

水平图(类似于image 图)。

contourplot

等高线图。

cloud

三维散点图。

wireframe

三维曲面图(类似于persp 图)。

超变量:

splom

散点图矩阵。

parallel

平行坐标图。

各种各样的:

rfs

残差图和拟合值图(另请参阅oneway)。

tmd

图基Mean-Difference情节。

此外,还有一些面板函数本身作用不大,但可以作为自定义面板函数的有用组件。这些记录在 panel.functions 中。 Lattice 还提供了一系列与传统图形基元 linespoints 等相对应的便捷函数。这些函数是使用网格图形实现的,但在参数列表方面尝试尽可能接近传统版本。这些函数的名称类似于 llinespanel.lines,并且在编写(或从 S-PLUS 代码移植)重要面板函数时通常很有用。

最后,latticeExtra 包中提供了许多扩展莱迪思系统的有用增强函数。

相关用法


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