我有一个温度netcdf data.i想要使用R by image.plot函数中的字段包绘制两个图像(第一个最大温度和第二个平均温度)。我希望第一张图像中的网格值大于300K,在第二张图像中显示该网格上的交叉/星标。
答案 0 :(得分:0)
如果指定x和y,则可以很容易地获得满足第一个矩阵中的条件的索引,然后将符号放在第二个矩阵上。我在下面给出一个简单的例子。
首先,我们编制数据。
library(fields)
test <- matrix(runif(100),ncol=10)
test2 <- matrix(1:100, ncol=10)
然后我们可以设置绘图环境并可视化数据。
layout(matrix(c(1,2),ncol=2))
image.plot(x=1:10, y=1:10, z=unlist(test))
image.plot(x=1:10, y=1:10, z=unlist(test2))
然后我们确定哪些细胞满足大于0.75的标准(这是任意的)。
inds <- which(test > 0.75, arr.ind=TRUE)
然后我们可以使用points
将星号添加到test2
中我们符合矩阵test
的条件的单元格中心。
points(x=inds[,1], y=inds[,2], pch=8)