gpt4 book ai didi

R:水平图上的叠加图

转载 作者:行者123 更新时间:2023-12-04 22:21:31 26 4
gpt4 key购买 nike

我有一个光栅文件“airtemp”和一个多边形形状文件“大陆”。我想将“大陆”叠加在“空气温度”上,因此在“空气温度”之上可以看到“大陆”的边界。我通过 levelplot 绘制光栅文件(格子)。我通过 readShapeSpatial 阅读了多边形(maptools) 先是 plot .

问题是levelplotplot有不同的尺度。 Plot往往有较小的框架。抱歉,我没有可重复的样本,但我觉得这对地球物理学家来说是一个相当普遍的问题。我在这里发现了一个类似的问题:

http://r.789695.n4.nabble.com/overlaying-a-levelplot-on-a-map-plot-td2019419.html

但我不太明白解决方案。

最佳答案

您可以使用 +.trellis 覆盖 shapefile和 layer来自 latticeExtra 的函数包(这是自动
装载了 rasterVis )。

library(raster)
library(rasterVis)

让我们建立一些数据来玩。如果你已经,你可以跳过这部分
有一个光栅文件和一个形状文件。
library(maps)
library(mapdata)
library(maptools)

## raster
myRaster <- raster(xmn=-100, xmx=100, ymn=-60, ymx=60)
myRaster <- init(myRaster, runif)

## polygon shapefile
ext <- as.vector(extent(myRaster))

boundaries <- map('worldHires', fill=TRUE,
xlim=ext[1:2], ylim=ext[3:4],
plot=FALSE)

## read the map2SpatialPolygons help page for details
IDs <- sapply(strsplit(boundaries$names, ":"), function(x) x[1])
bPols <- map2SpatialPolygons(boundaries, IDs=IDs,
proj4string=CRS(projection(myRaster)))

现在你用 rasterVis::levelplot 绘制光栅文件, 这
带有 sp::sp.polygons 的 shapefile ,并制作了整体图形
+.trellislayer .
levelplot(myRaster) + layer(sp.polygons(bPols))

overlay with transparent color
sp.polygons使用透明颜色作为 fill 的默认颜色,但您可以更改它:
levelplot(myRaster) + layer(sp.polygons(bPols, fill='white', alpha=0.3))

overlay with white color

关于R:水平图上的叠加图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17582532/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com