Ao imprimir objetos sf no console, há um cabeçalho com o Geodetic CRS
ou Porjected CRS
que tem um nome de formato agradável para o CRS. Existe uma maneira de extrair essas informações em vez de
p1 = st_point(c(7,52))
p2 = st_point(c(-30,20))
sfc = st_sfc(p1, p2, crs = 4326)
sfc
Geometry set for 2 features
Geometry type: POINT
Dimension: XY
Bounding box: xmin: -30 ymin: 20 xmax: 7 ymax: 52
Geodetic CRS: WGS 84 <- this line
POINT (7 52)
POINT (-30 20)
st_transform(sfc, 3857)
Geometry set for 2 features
Geometry type: POINT
Dimension: XY
Bounding box: xmin: -3339585 ymin: 2273031 xmax: 779236.4 ymax: 6800125
Projected CRS: WGS 84 / Pseudo-Mercator <- this line
POINT (779236.4 6800125)
POINT (-3339585 2273031)
nc = st_read(system.file("shape/nc.shp", package="sf"))
nc
Simple feature collection with 100 features and 14 fields
Geometry type: MULTIPOLYGON
Dimension: XY
Bounding box: xmin: -84.32385 ymin: 33.88199 xmax: -75.45698 ymax: 36.58965
Geodetic CRS: NAD27 <- this line
First 10 features:
[...]
Veja como st_crs(sfc)$input
dá "EPSG:4326"
e não WGS 84
. No entanto, st_crs(nc)$input
dá "NAD27"
, mas st_crs(st_transform(sfc, 3857))$input
dá "EPSG:3857"
e nãoProjected CRS: WGS 84 / Pseudo-Mercator
Existe também o equivalente em terra para dados raster?
Você pode usar o
wkt
elemento fromst_crs()
. Você obtém uma string com o texto bem conhecido ; então é uma questão de extração de texto com uma expressão regular :obter
Verifique a fonte, por exemplo
Embora você possa basicamente usar
sf:::crs_parameters()$Name
você mesmo, ele também é exposto por meiocrs
do objeto retornado porst_crs()
:É semelhante com
terra
:Criado em 2024-10-10 com reprex v2.1.1