| Title: | Easy Access to High-Resolution Daily Climate Data for Europe |
| Version: | 1.0.0 |
| Description: | Get high-resolution (1 km) daily, monthly and annual climate data (precipitation, and average, minimum and maximum temperatures) for points and polygons within Europe. |
| License: | GPL (≥ 3) |
| URL: | https://verughub.github.io/easyclimate/, https://github.com/VeruGHub/easyclimate |
| BugReports: | https://github.com/VeruGHub/easyclimate/issues |
| Depends: | R (≥ 3.5.0) |
| Imports: | R.utils, RCurl, stats, terra (≥ 1.2-13) |
| Suggests: | sf, testthat (≥ 3.0.0) |
| Config/testthat/edition: | 3 |
| Encoding: | UTF-8 |
| RoxygenNote: | 7.3.3 |
| NeedsCompilation: | no |
| Packaged: | 2026-07-28 05:28:05 UTC; SOFIA |
| Author: | Verónica Cruz-Alonso
|
| Maintainer: | Sofía Miguel <sofia.miromero@gmail.com> |
| Repository: | CRAN |
| Date/Publication: | 2026-07-28 22:40:09 UTC |
easyclimate: Easy Access to High-Resolution Daily Climate Data for Europe
Description
Get high-resolution (1 km) daily, monthly and annual climate data (precipitation, and average, minimum and maximum temperatures) for points and polygons within Europe.
Author(s)
Maintainer: Sofía Miguel sofia.miromero@gmail.com (ORCID)
Authors:
Verónica Cruz-Alonso veronica.cral@gmail.com (ORCID) [copyright holder]
Francisco Rodriguez-Sanchez (ORCID) [copyright holder]
Christoph Pucher (ORCID)
Paloma Ruiz-Benito (ORCID)
Julen Astigarraga (ORCID)
Mathias Neumann (ORCID)
Sophia Ratcliffe (ORCID)
See Also
Useful links:
Report bugs at https://github.com/VeruGHub/easyclimate/issues
Build the URL for a given request
Description
Build the URL to download climate data from ftp://palantir.boku.ac.at/Public/ClimateData/
Usage
build_url(climatic_var_single, year, version = "last", temp_res = "day")
Arguments
climatic_var_single |
Character. Climatic variable to download. One of "Tmax","Tmin", "Tavg", or "Prcp". |
year |
Numeric. Year for which climatic data will be downloaded. |
version |
Character. Climate data version. Either "last" (default) or "4" (version 4). |
temp_res |
Character. One of "day" , "month" or "year". |
Value
Character string with the URL.
Author(s)
Veronica Cruz-Alonso, Francisco Rodríguez-Sánchez, Sophia Ratcliffe, Sofía Miguel
Check climatic data server
Description
Checks that the online climatic data server is available and working correctly.
Usage
check_server(
climatic_var = NULL,
year = NULL,
version = "last",
verbose = TRUE,
time_unit = "day"
)
Arguments
climatic_var |
Optional. One of "Prcp", "Tmin", or "Tmax". |
year |
Optional. Year between 1950 and the latest year available on the
server. Use |
version |
Character. Climatic data version. Either "last" (default) or "4" (version 4). |
verbose |
Logical. If TRUE, prints diagnostic messages; otherwise, returns only TRUE/FALSE. |
time_unit |
Character. One of "day" , "month" or "year". |
Value
TRUE if the server is available; FALSE otherwise.
Examples
interactive()
check_server()
Get annual data for multiple climatic variables
Description
Extract annual climate data (temperature and precipitation) for a given set of points or polygons within Europe.
Usage
get_annual_climate(
coords = NULL,
climatic_var = "Prcp",
period = NULL,
output = "df",
check_connection = FALSE
)
Arguments
coords |
A matrix, data.frame, |
climatic_var |
Character. Climate variables to download ("Tmax", "Tmin", "Tavg", or "Prcp"). Various elements can be concatenated in the vector. |
period |
Numbers representing years between 1950 and the latest year available. To specify a sequence of years use the format 'start:end' (e.g. YYYY:YYYY, see examples). Various elements can be concatenated in the vector (e.g. c(2000:2005, 2010:2015, 2020)) |
output |
Character. Either "df", which returns a data.frame with daily
climatic values for each point or polygon, or "raster", which returns |
check_connection |
Logical. Check the connection to the server before attempting data download? |
Value
Either:
A data.frame (if output = "df")
A list of
terra::SpatRaster()object (if output = "raster")
For precipitation, the function returns total (accumulated) precipitation per year. For temperature variables ('Tmin', 'Tmax', 'Tavg') the function returns the average (i.e. the annual average of minimum and maximum daily temperatures, or the average annual temperature).
Author(s)
Veronica Cruz-Alonso, Francisco Rodriguez-Sanchez
References
Pucher, Christoph (2026). Description of Downscaled European Climate Data. figshare. Online resource. https://doi.org/10.6084/m9.figshare.33078053.v1
Pucher C. 2023. Description and Evaluation of Downscaled Daily Climate Data Version 4. https://doi.org/10.6084/m9.figshare.22962671.v1
Adam Moreno, Hubert Hasenauer. 2016. Spatial downscaling of European climate data. International Journal of Climatology 36: 1444–1458.
Examples
# Coords as matrix
coords <- matrix(c(-5.36, 37.40), ncol = 2)
ex <- get_annual_climate(coords, period = 2008) # 2008
ex <- get_annual_climate(coords, period = c(2008, 2010)) # 2008 AND 2010
ex <- get_annual_climate(coords, period = 2008:2010) # 2008 TO 2010
ex <- get_annual_climate(coords, period = 2008, climatic_var = "Tmin")
# Coords as data.frame or tbl_df
coords <- as.data.frame(coords) #coords <- tibble::as_tibble(coords)
names(coords) <- c("lon", "lat") # must have these columns
ex <- get_annual_climate(coords, period = 2008) # single month
# Coords as sf
coords <- sf::st_as_sf(coords, coords = c("lon", "lat"))
ex <- get_annual_climate(coords, period = 2008) # single month
# Several points
coords <- matrix(c(-5.36, 37.40, -4.05, 38.10), ncol = 2, byrow = TRUE)
ex <- get_annual_climate(coords, period = 2008, output = "raster") # raster output
# Multiple climatic variables
coords <- matrix(c(-5.36, 37.40), ncol = 2)
ex <- get_annual_climate(coords, climatic_var = c("Tmin", "Tmax"), period = 2008)
## Polygons
coords <- terra::vect("POLYGON ((-5 38, -5 37.5, -4.5 37.5, -4.5 38, -5 38))")
# Return raster
ex <- get_annual_climate(coords, period = 2008, output = "raster")
ex <- get_annual_climate(coords, climatic_var = c("Tmin", "Tmax"),
period = 2008, output = "raster") # Multiple climatic variables
# Return dataframe for polygon
ex <- get_annual_climate(coords, period = 2008)
Get daily data for multiple climatic variables
Description
Extracts daily climatic data (temperature and precipitation) for a given set of points or polygons within Europe.
Usage
get_daily_climate(
coords = NULL,
climatic_var = "Prcp",
period = NULL,
output = "df",
version = "last",
check_connection = FALSE
)
Arguments
coords |
A matrix, data.frame, |
climatic_var |
Character. One or more climatic variables to download ("Tmax", "Tmin", "Tavg", or "Prcp"). Various elements can be concatenated in the vector. |
period |
Either numeric vector of years (between 1950 and the latest available
year) or character vector of dates in "YYYY-MM-DD" format (to obtain data for
specific days). To specify a sequence of years or dates, use the format 'start:end'
(e.g. YYYY:YYYY or "YYYY-MM-DD:YYYY-MM-DD", see examples). Multiple dates or years
can be concatenated in the vector (e.g. c(2000:2005, 2010:2015, 2020),
c("2000-01-01:2000-01-15", "2000-02-01")).
Use |
output |
Character. Either "df", which returns a data.frame with daily
climatic values for each point or polygon, or "raster", which returns |
version |
Character. Climate data version. Uses the latest version ("last") by default. Version "4" is also available for reproducibility. See References for details about the climate datasets. |
check_connection |
Logical. Default is FALSE. If TRUE, checks the connection to the server before attempting to download the data. |
Value
Either:
A data.frame (if output = "df")
A
terra::SpatRaster()object (if output = "raster")A list of
terra::SpatRaster()objects (if output = "raster" and there is more than oneclimatic_var).
Author(s)
Veronica Cruz-Alonso, Francisco Rodriguez-Sanchez
References
For details on the latest version of the climatic data, see: Pucher, Christoph (2026). Description of Downscaled European Climate Data. figshare. Online resource. https://doi.org/10.6084/m9.figshare.33078053.v1
For details on version 4, see: Pucher C. 2023. Description and Evaluation of Downscaled Daily Climate Data Version 4. https://doi.org/10.6084/m9.figshare.22962671.v1
Adam Moreno, Hubert Hasenauer. 2016. Spatial downscaling of European climate data. International Journal of Climatology 36: 1444–1458.
Examples
# Coords as matrix
coords <- matrix(c(-5.36, 37.40), ncol = 2)
ex <- get_daily_climate(coords, period = "2001-01-01") # single day
ex <- get_daily_climate(coords, period = c("2001-01-01", "2001-01-03")) # 1st AND 3rd Jan 2001
ex <- get_daily_climate(coords, period = "2001-01-01:2001-01-03") # 1st TO 3rd Jan 2001
ex <- get_daily_climate(coords, period = 2008) # entire year
ex <- get_daily_climate(coords, period = c(2008, 2010)) # 2008 AND 2010
ex <- get_daily_climate(coords, period = 2008:2010) # 2008 TO 2010
ex <- get_daily_climate(coords, period = "2001-01-01", climatic_var = "Tmin")
# Coords as data.frame or tbl_df
coords <- as.data.frame(coords) #coords <- tibble::as_tibble(coords)
names(coords) <- c("lon", "lat") # must have these columns
ex <- get_daily_climate(coords, period = "2001-01-01") # single day
# Coords as sf
coords <- sf::st_as_sf(coords, coords = c("lon", "lat"))
ex <- get_daily_climate(coords, period = "2001-01-01") # single day
# Several points
coords <- matrix(c(-5.36, 37.40, -4.05, 38.10), ncol = 2, byrow = TRUE)
ex <- get_daily_climate(coords, period = "2001-01-01", output = "raster") # raster output
# Multiple climatic variables
coords <- matrix(c(-5.36, 37.40), ncol = 2)
ex <- get_daily_climate(coords, climatic_var = c("Tmin", "Tmax"), period = "2001-01-01")
## Polygons
coords <- terra::vect("POLYGON ((-5 38, -5 37.5, -4.5 37.5, -4.5 38, -5 38))")
# Return raster
ex <- get_daily_climate(coords, period = "2001-01-01", output = "raster")
# Return dataframe for polygon
ex <- get_daily_climate(coords, period = "2001-01-01")
Get monthly data for multiple climatic variables
Description
Extract monthly climate data (temperature and precipitation) for a given set of points or polygons within Europe.
Usage
get_monthly_climate(
coords = NULL,
climatic_var = "Prcp",
period = NULL,
output = "df",
check_connection = FALSE
)
Arguments
coords |
A matrix, data.frame, |
climatic_var |
Character. One or more climatic variables to download ("Tmax", "Tmin", "Tavg", or "Prcp"). Various elements can be concatenated in the vector. |
period |
Either numbers (representing years between 1950 and the latest year
available), or dates in "YYYY-MM" format (to obtain data for specific months).
To specify a sequence of years or months use the format 'start:end'
(e.g. YYYY:YYYY or "YYYY-MM:YYYY-MM", see examples). Various elements
can be concatenated in the vector (e.g. c(2000:2005, 2010:2015, 2020),
c("2000-01:2000-06", "2001-01")).
Use |
output |
Character. Either "df", which returns a data.frame with daily
climatic values for each point or polygon, or "raster", which returns |
check_connection |
Logical. Default is FALSE. If TRUE, checks the connection to the server before attempting to download the data. |
Value
Either:
A data.frame (if output = "df")
A list of
terra::SpatRaster()object (if output = "raster")
For precipitation, the function returns total (accumulated) precipitation per month. For temperature variables ("Tmin", "Tmax", "Tavg") the function returns the average (i.e. the monthly average of minimum and maximum daily temperatures, or the average monthly temperature).
Author(s)
Veronica Cruz-Alonso, Francisco Rodriguez-Sanchez
References
For details on the latest version of the climatic data, see: Pucher, Christoph (2026). Description of Downscaled European Climate Data. figshare. Online resource. https://doi.org/10.6084/m9.figshare.33078053.v1
For details on version 4, see: Pucher C. 2023. Description and Evaluation of Downscaled Daily Climate Data Version 4. https://doi.org/10.6084/m9.figshare.22962671.v1
Adam Moreno, Hubert Hasenauer. 2016. Spatial downscaling of European climate data. International Journal of Climatology 36: 1444–1458.
Examples
# Coords as matrix
coords <- matrix(c(-5.36, 37.40), ncol = 2)
ex <- get_monthly_climate(coords, period = "2001-01") # single month
ex <- get_monthly_climate(coords, period = c("2001-01", "2001-03")) # January AND March 2001
ex <- get_monthly_climate(coords, period = "2001-01:2001-03") # January TO March 2001
ex <- get_monthly_climate(coords, period = 2008) # entire year
ex <- get_monthly_climate(coords, period = c(2008, 2010)) # 2008 AND 2010
ex <- get_monthly_climate(coords, period = 2008:2010) # 2008 TO 2010
ex <- get_monthly_climate(coords, period = "2001-01", climatic_var = "Tmin")
# Coords as data.frame or tbl_df
coords <- as.data.frame(coords) #coords <- tibble::as_tibble(coords)
names(coords) <- c("lon", "lat") # must have these columns
ex <- get_monthly_climate(coords, period = "2001-01") # single month
# Coords as sf
coords <- sf::st_as_sf(coords, coords = c("lon", "lat"))
ex <- get_monthly_climate(coords, period = "2001-01") # single month
# Several points
coords <- matrix(c(-5.36, 37.40, -4.05, 38.10), ncol = 2, byrow = TRUE)
ex <- get_monthly_climate(coords, period = "2001-01", output = "raster") # raster output
# Multiple climatic variables
coords <- matrix(c(-5.36, 37.40), ncol = 2)
ex <- get_monthly_climate(coords, climatic_var = c("Tmin", "Tmax"), period = "2001-01")
## Polygons
coords <- terra::vect("POLYGON ((-5 38, -5 37.5, -4.5 37.5, -4.5 38, -5 38))")
# Return raster
ex <- get_monthly_climate(coords, period = "2001-01", output = "raster")
ex <- get_monthly_climate(coords, climatic_var = c("Tmin", "Tmax"), period = "2001-01",
output = "raster") # Multiple climatic variables
# Return dataframe for polygon
ex <- get_monthly_climate(coords, period = "2001-01")
Get available climatic data versions and years available.
Description
Returns a data.frame describing the available climatic data versions and their temporal coverage (initial and latest available years).
Usage
get_periods()
Value
A data.frame containing the available climate data versions and their corresponding initial and latest available years.
Author(s)
Sofia Miguel
References
For details on the latest version of the climatic data, see: Pucher, Christoph (2026). Description of Downscaled European Climate Data. figshare. Online resource. https://doi.org/10.6084/m9.figshare.33078053.v1
For details on version 4, see: Pucher C. 2023. Description and Evaluation of Downscaled Daily Climate Data Version 4. https://doi.org/10.6084/m9.figshare.22962671.v1
Adam Moreno, Hubert Hasenauer. 2016. Spatial downscaling of European climate data. International Journal of Climatology 36: 1444–1458.