我需要加载栅格地图和.shp
文件。
以下列方式加载到全局环境中
library(raster)
library(maptools)
library(maps)
topo <- raster("topo Europe.tif")
roads <- readShapeSpatial("roman_roads_v2008.shp")
现在我在全球环境中都有。我可以独立绘制它们
plot(plot(topo, col=gray.colors(100), axes=F, box=F, legend=F))
plot(roads)
然而,即使我试图像这样将它们一起绘制,我也只能看到其中的一个
plot(plot(topo, col=gray.colors(100), axes=F, box=F, legend=F))
plot(roads)
我尝试使用
进行合并topo.crs <- CRS(projection(topo))
roadstopo <- spTransform(roads, topo.crs)
但我收到此错误消息。
spTransform(xSP,CRSobj,...)出错: NA参考系统无法进行转换
有没有办法合并它们或在另一个上进行绘图?
对象信息
# roads
class : SpatialLinesDataFrame
features : 7154
extent : -1671176, 2800340, -587294.7, 3042248 (xmin, xmax, ymin, ymax)
coord. ref. : NA
variables : 7
names : OBJECTID, CLASS, CERTAINTY, PERIOD, HYPERLINK, SOURCE, Shape_Leng
min values : 1, Major Road, No, NA, NA, 150K, 22.07838
max values : 8900, Minor Road, YES, NA, NA, TIB, 362192.17666
# Topo
class : RasterLayer
dimensions : 4320, 6480, 27993600 (nrow, ncol, ncell)
resolution : 0.008333333, 0.008333333 (x, y)
extent : -13, 41, 29, 65 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +ellps=WGS84 +no_defs
data source : C:\Users\Mathew\OneDrive\Archaology\Dissertation\R work\topo_Europe.tif
names : topo_Europe
values : -422, 4536 (min, max)
现在
projection(roads)<- "+proj=longlat +ellps=WGS84 +no_defs"
对象信息
# roads
class : SpatialLinesDataFrame
features : 7154
extent : -1671176, 2800340, -587294.7, 3042248 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +ellps=WGS84 +no_defs
variables : 7
names : OBJECTID, CLASS, CERTAINTY, PERIOD, HYPERLINK, SOURCE, Shape_Leng
min values : 1, Major Road, No, NA, NA, 150K, 22.07838
max values : 8900, Minor Road, YES, NA, NA, TIB, 362192.17666
# Topo
class : RasterLayer
dimensions : 4320, 6480, 27993600 (nrow, ncol, ncell)
resolution : 0.008333333, 0.008333333 (x, y)
extent : -13, 41, 29, 65 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +ellps=WGS84 +no_defs
data source : C:\Users\Mathew\OneDrive\Archaology\Dissertation\R work\topo_Europe.tif
names : topo_Europe
values : -422, 4536 (min, max)
它们具有相同的投影但是没有一起绘制。首先绘制绘图然后再添加另一个,但是没有任何可见的。我的绘图方式是错误的吗?
plot(topo, col=gray.colors(100), axes=F, box=F, legend=F)
with(roads, add=T)