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


R filled.contour 水平(等高线)图


R语言 filled.contour 位于 graphics 包(package)。

说明

此函数生成一个等高线图,其中等高线之间的区域填充为纯色(克利夫兰称其为水平图)。显示颜色如何映射到 z 值的键显示在图的右侧。

用法

filled.contour(x = seq(0, 1, length.out = nrow(z)),
               y = seq(0, 1, length.out = ncol(z)),
               z,
               xlim = range(x, finite = TRUE),
               ylim = range(y, finite = TRUE),
               zlim = range(z, finite = TRUE),
               levels = pretty(zlim, nlevels), nlevels = 20,
               color.palette = function(n) hcl.colors(n, "YlOrRd", rev = TRUE),
               col = color.palette(length(levels) - 1),
               plot.title, plot.axes, key.title, key.axes, key.border = NULL,
               asp = NA, xaxs = "i", yaxs = "i", las = 1,
               axes = TRUE, frame.plot = axes, ...)

.filled.contour(x, y, z, levels, col)

参数

x , y

测量 z 中的值的网格线位置。这些必须按升序排列。 (本说明的其余部分不适用于 .filled.contour 。)默认情况下,使用 0 到 1 之间的等距值。如果 xlist ,则其组件 x$xx$y 分别用于 xy 。如果列表具有组件 z ,则该组件用于 z

z

包含要绘制的值的数字矩阵。请注意,为方便起见,可以使用 x 代替 z

xlim

绘图的 x 限制。

ylim

绘图的 y 限制。

zlim

绘图的 z 限制。

levels

一组用于划分 z 范围的级别。必须严格递增(且有限)。连续级别之间具有 z 值的区域将涂上相同的颜色。

nlevels

如果未指定levels,则z 值的范围大约分为这么多级别。

color.palette

用于在绘图中分配颜色的调色板函数。

col

绘图中使用的一组明确的颜色。该参数会覆盖任何调色板函数规范。颜色应该比级别少一种

plot.title

为主要情节添加标题的语句。

plot.axes

在主图上绘制轴(和 box )的语句。这会覆盖默认轴。

key.title

为情节键添加标题的语句。

key.axes

在绘图键上绘制轴的语句。这会覆盖默认轴。

key.border

rect() 角度边框的颜色。

asp

宽高比,请参阅 plot.window

xaxs

x 轴样式。默认是使用内部标签。

yaxs

y 轴样式。默认是使用内部标签。

las

要使用的标签样式。默认是使用水平标签。

axes , frame.plot

指示是否应绘制轴和框的逻辑,如 plot.default 中。

...

额外的 graphical parameters ,当前仅传递给 title()

细节

要绘制的值可以包含NA。具有两个或多个角值的矩形 NA 将被完全省略:如果有单个 NA 值,则省略与 NA 相对的三角形。

要绘制的值可以是无限的:效果类似于 NA 值所说明的效果。

.filled.contour 是一个“基本”接口,用于将等值线图添加到 already-set-up 绘图区域。它旨在供编程使用,程序员负责检查参数的条件。

注意

filled.contour 使用layout 函数,因此仅限于整页显示。

filled.contour 产生的输出实际上是两个图的组合;一种是填充轮廓,一种是图例。为这两个图设置了两个单独的坐标系,但它们仅在内部使用 - 一旦函数返回,这些坐标系就会丢失。如果要注释主等高线图,例如添加点,可以在 plot.axes 参数中指定图形命令。请参阅示例。

例子

require("grDevices") # for colours
filled.contour(volcano, asp = 1) # simple

x <- 10*1:nrow(volcano)
y <- 10*1:ncol(volcano)
filled.contour(x, y, volcano,
    color.palette = function(n) hcl.colors(n, "terrain"),
    plot.title = title(main = "The Topography of Maunga Whau",
    xlab = "Meters North", ylab = "Meters West"),
    plot.axes = { axis(1, seq(100, 800, by = 100))
                  axis(2, seq(100, 600, by = 100)) },
    key.title = title(main = "Height\n(meters)"),
    key.axes = axis(4, seq(90, 190, by = 10)))  # maybe also asp = 1
mtext(paste("filled.contour(.) from", R.version.string),
      side = 1, line = 4, adj = 1, cex = .66)

# Annotating a filled contour plot
a <- expand.grid(1:20, 1:20)
b <- matrix(a[,1] + a[,2], 20)
filled.contour(x = 1:20, y = 1:20, z = b,
               plot.axes = { axis(1); axis(2); points(10, 10) })

## Persian Rug Art:
x <- y <- seq(-4*pi, 4*pi, length.out = 27)
r <- sqrt(outer(x^2, y^2, `+`))
## "minimal"
filled.contour(cos(r^2)*exp(-r/(2*pi)), axes = FALSE, key.border=NA)
## rather, the key *should* be labeled (but axes still not):
filled.contour(cos(r^2)*exp(-r/(2*pi)), frame.plot = FALSE,
               plot.axes = {})

作者

Ross Ihaka and R Core Team

参考

Cleveland, W. S. (1993) Visualizing Data. Summit, New Jersey: Hobart.

也可以看看

contourimagehcl.colorsgray.colorspalettecontourplotlevelplot 来自包 lattice

相关用法


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