2

下面给出的代码将读取并显示带有图例的文件图像。我如何告诉 R 在绘制图例时不要考虑 -9999 或任何其他值的值。

conne <- file("C:\\DEM.bin", "rb")
image(t(t(y)),ylim=c(1,0))
image.plot(t(t(y)), add = FALSE, legend.shrink = 0.9,legend.width = 1.2,
           legend.mar = NULL, graphics.reset = FALSE, horizontal = FALSE, bigplot = NULL,
           smallplot = NULL,legend.only = FALSE,lab.breaks=NULL, axis.args=NULL))
4

1 回答 1

5

让我们创建一个模型数据集(您的数据集不可重现):

m = matrix(runif(100), 10, 10)
m[sample(1:10, size = 2), sample(1:10, size = 2)] = -9999

矩阵m现在包含两个您不想绘制的值:

在此处输入图像描述

解决方案是制作它们NA,在这种情况下,R 会知道它们缺少值:

m[m == -9999] <- NA
image(m)

在此处输入图像描述

这些NA值现在被忽略,并被白色像素替换,您的图像看起来很正常。如果有多个值要设为 NA:

m[m %in% c(-9999, 1e30, -1)] <- NA

现在列表中的所有值都标记为NA.

于 2012-06-12T08:58:00.647 回答