Сопоставление точек с растром в разных проекциях

Я сопоставляю данные о происшествиях для вида, представляющего интерес для растровых данных о климате из DAYMET, но у меня возникают проблемы с сопоставлением точек с растрами.

По сути, у меня есть растр климатических данных дневного времени (tmin), который не имеет проекции при загрузке, но находится в конформной конической форме Ламберта ( https://daac.ornl.gov/DAYMET/guides/Daymet_mosaics.html), поэтому я установил CRS:

#import daymet raster
tmin=raster("Tmin.tif")

#set projection for daymet data -> Lambert conformal
proj4string(tmin)<-CRS("+proj=lcc +lon_0=-100 +lat_0=42.5 +x_0=0 +y_0=0 +a=6378137 +rf=298.257223563 +lat_1=25 +lat_2=60")

И затем я импортирую данные о происшествии, которые находятся в WGS84 lat/long(x,y), project и transform, чтобы соответствовать tmin:

#import occurrences -> sp points 
species<- read.csv("species_sites.csv", header=T)
coordinates(species)=~X+Y

#project occurences
projection(species) <- CRS("+proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0 ")
species <- spTransform(species, crs(tmin)) #transform to match daymet raster

Проблема в том, что они не совпадают, когда вы строите график вместе, и если вы посмотрите на экстенты, они отключены на пару порядков:

> species
class       : SpatialPointsDataFrame 
features    : 219 
extent      : 658883.2, 687373.3, 398524.3, 441106.2  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0 
variables   : 3
names       : Site, Species, Season 
min values  :    1,      0,      - 
max values  :  219,      1,   2014 

> tmin
class       : RasterLayer 
dimensions  : 126, 138, 17388  (nrow, ncol, ncell)
resolution  : 1, 1  (x, y)
extent      : 591.25, 729.25, 355.5, 481.5  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=lcc +lon_0=-100 +lat_0=42.5 +x_0=0 +y_0=0 +a=6378137 +rf=298.257223563 +lat_1=25 +lat_2=60  
names       : Tmin 
values      : -9.410258, -7.011579  (min, max)

Итак, я соответствовал экстентам:

species@bbox<-as.matrix(extent(tmin))

но точки все еще не совпадают с растром. Не уверен, что еще делать. Любые предложения или люди с более подробным знанием данных дневного метания, которые могут знать, что происходит?

1 ответ

Спасибо @rar, понял это прошлой ночью... дох.

просто нужно изменить CRS на:

CRS("+proj=lcc +lon_0=-100 +lat_0=42.5 +x_0=0 +y_0=0 +lat_1=25 +lat_2=60 +datum=WGS84 +units=km")
Другие вопросы по тегам