CatastRo is a package that provide access to different API services of the Spanish Cadastre. With CatastRo it is possible to download spatial objects (as buildings or cadastral parcels), maps and geocode cadastral references.
Install CatastRo from CRAN:
install.packages("CatastRo")
You can install the developing version of CatastRo using the r-universe:
# Install CatastRo in R:
install.packages("CatastRo",
repos = c(
"https://ropenspain.r-universe.dev",
"https://cloud.r-project.org"
)
)
Alternatively, you can install the developing version of CatastRo with:
remotes::install_github("rOpenSpain/CatastRo", dependencies = TRUE)
The functions of CatastRo are organized by API endpoint. The package
naming convention is catr_*api*_*description*
.
These functions allow to geocode and reverse geocode cadastral references using the OVCCoordenadas service.
These functions are named catr_ovc_get_*
and returns a tibble, as
provided by the package tibble. See
vignette("ovcservice", package = "CatastRo")
where these functions are
described.
These functions return spatial object (on the formats provided by the sf or terra using the Catastro INSPIRE service.
Note that the coverage of this service is 95% of the Spanish territory, excluding Basque Country and Navarre1 that have their own independent cadastral offices.
There are three types of functions, each one querying a different service:
The ATOM service allows to batch-download vector objects of different
cadastral elements for a specific municipality. The result is provided
as sf
objects (See sf package).
These functions are named catr_atom_get_xxx
.
The WFS service allows to download vector objects of specific cadastral
elements. The result is provided as sf
class objects (see
sf package). Note that there are
some limitations on the extension and number of elements to query. For
batch-downloading the ATOM service is preferred.
These functions are named catr_wms_get_xxx
.
This service allows to download georeferenced images of different cadastral elements. The result is a raster on the format provides by terra.
There is a single function for querying this service:
catr_wms_get_layer()
.
Please check the downloading provisions of the service.
This script highlights some features of CatastRo :
library(CatastRo)
catr_ovc_get_cpmrc(rc = "13077A01800039")
#> # A tibble: 1 × 10
#> xcoord ycoord refcat address pc.pc1 pc.pc2 geo.xcen geo.ycen geo.srs ldt
#> <dbl> <dbl> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 -3.46 38.6 13077A018… DS DIS… 13077… 18000… -3.4575… 38.6184… EPSG:4… DS D…
catr_ovc_get_rccoor(
lat = 38.6196566583596,
lon = -3.45624183836806,
srs = "4230"
)
#> # A tibble: 1 × 8
#> refcat address pc.pc1 pc.pc2 geo.xcen geo.ycen geo.srs ldt
#> <chr> <chr> <chr> <chr> <dbl> <dbl> <chr> <chr>
#> 1 13077A01800039 DS DISEMINADO P… 13077… 18000… -3.46 38.6 EPSG:4… DS D…
bu <- catr_atom_get_buildings("Nava de la Asuncion", to = "Segovia")
# Map
library(ggplot2)
ggplot(bu) +
geom_sf(aes(fill = currentUse), col = NA) +
coord_sf(
xlim = c(374500, 375500),
ylim = c(4556500, 4557500)
) +
scale_fill_manual(values = hcl.colors(6, "Dark 3")) +
theme_minimal() +
ggtitle("Nava de la Asunción, Segovia")
wfs_get_buildings <- catr_wfs_get_buildings_bbox(
c(-5.569, 42.598, -5.564, 42.601),
srs = 4326
)
# Map
ggplot(wfs_get_buildings) +
geom_sf() +
ggtitle("Leon Cathedral, Spain")
# For tiles better project
wfs_get_buildings_pr <- sf::st_transform(wfs_get_buildings, 25830)
wms_bu <- catr_wms_get_layer(wfs_get_buildings_pr,
srs = 25830,
bbox_expand = 0.2
)
# Map
# Load tidyterra
library(tidyterra)
ggplot() +
geom_spatraster_rgb(data = wms_bu) +
geom_sf(data = wfs_get_buildings_pr, fill = "red", alpha = 0.6)
Some data sets and tiles may have a size larger than 50MB. You can use CatastRo to create your own local repository at a given local directory passing the following option:
catr_set_cache_dir("./path/to/location")
When this option is set, CatastRo would look for the cached file and it will load it, speeding up the process.
Delgado Panadero Á, Hernangómez D (2024). CatastRo: Interface to the API Sede Electrónica Del Catastro. doi:10.32614/CRAN.package.CatastRo, https://ropenspain.github.io/CatastRo/.
A BibTeX entry for LaTeX users is:
@Manual{R-CatastRo,
title = {{CatastRo}: Interface to the {API} Sede Electrónica Del Catastro},
author = {Ángel {Delgado Panadero} and Diego Hernangómez},
doi = {10.32614/CRAN.package.CatastRo},
year = {2024},
version = {0.4.0},
url = {https://ropenspain.github.io/CatastRo/},
abstract = {Access public spatial data available under the INSPIRE directive. Tools for downloading references and addresses of properties, as well as map images.},
}
Check the GitHub page for source code.
Footnotes
-
The package CatastRoNav provides access to the Cadastre of Navarre, with similar functionalities than CatastRo. ↩