我只是尝试在地图上标绘某种雷达数据。 RData是尺寸为[1:3,1:421,1:461,1:25]的数组。
我有一个mylat [1:421,1:461]和mylon [1:421,1:461]的纬度和经度数据网格,这些数据网格提供了我的观点。
sbbox <- make_bbox(lon = mylon, lat = mylat, f = .1)
gmap <- get_map(location = sbbox, maptype = "terrain", source = "google")
vlambda <- as.vector(lambda[m,,,t])
dflambda <- as.data.frame(vlambda)
ggmap(gmap)+
theme(panel.background = element_rect(fill ="white", colour="grey50")) +
#scale_x_continuous(limits = c(x1,x2), expand = c(0, 0)) +
#scale_y_continuous(limits = c(y1, y2), expand = c(0, 0)) +
ggtitle(bquote(paste(Lambda," [ ",mm^-1,"]"," @", .(t-1)," UTC"))) +
geom_point(data=dflambda,mapping=aes(x=as.vector(mylat),y=as.vector(mylon)))
ggsave(file=paste0("lambda_ggplot_map_plot_",names[m],".pdf"), dpi=150, device="pdf")
}
数据点应位于的网格如下所示(其球形投影): latlongrid
我认为它可以按照我编写的方式工作,但是可能我有些困惑。目前,scale_x是可选的,但是我想在之后切出特定区域。像image.plot中那样的“ z轴”着色也是很好的选择。
当我运行上面的代码时,它说:
删除了194081行,其中包含缺失值(geom_point)。
有人知道它如何工作吗? :)
其他信息:
阵列包含许多NA。 (#dflambda [is.na(dflambda)] <-0
不起作用)。 “ m”和“ t”是固定的,但稍后应循环使用。我想我的“数组到df”转换并不完美,但我只是不知道如何做得更好。因此,欢迎以任何方式创建排序良好的data.frame。
抱歉,我做错词的人对这一切还比较陌生。
期待答案! :)