Tag: sf

# Circular Map Cutouts in R

Katie Jolly wanted to surprise a friend with a nice geeky gift: a custom-made map cutout. Using R and some visual finetuning in Inkscape, she was able to made the below.

A detailed write-up of how Katie got to this product is posted here.

Basically, the R’s `tigris` package included all data on roads, and the ArcGIS Open Data Hub provided the neighborhood boundaries. Fortunately, the `sf` package is great for transforming and manipulating geospatial data, and includes some functions to retrieve a subset of roads based on their distance to a centroid. With this subset, Katie could then build these wonderful plots in no time with `ggplot2`.

# A Categorical Spatial Interpolation Tutorial in R

Timo Grossenbacher works as reporter/coder for SRF Data, the data journalism unit of Swiss Radio and TV. He analyzes and visualizes data and investigates data-driven stories. On his website, he hosts a growing list of cool projects. One of his recent blogs covers categorical spatial interpolation in R. The end result of that blog looks amazing:

This map was built with data Timo crowdsourced for one of his projects. With this data, Timo took the following steps, which are covered in his tutorial:

• Read in the data, first the geometries (Germany political boundaries), then the point data upon which the interpolation will be based on.
• Preprocess the data (simplify geometries, convert CSV point data into an `sf` object, reproject the geodata into the ETRS CRS, clip the point data to Germany, so data outside of Germany is discarded).
• Then, a regular grid (a raster without “data”) is created. Each grid point in this raster will later be interpolated from the point data.
• Run the spatial interpolation with the `kknn` package. Since this is quite computationally and memory intensive, the resulting raster is split up into 20 batches, and each batch is computed by a single CPU core in parallel.
• Visualize the resulting raster with `ggplot2`.

All code for the above process can be accessed on Timo’s Github. The georeferenced points underlying the interpolation look like the below, where each point represents the location of a person who selected a certain pronunciation in an online survey. More details on the crowdsourced pronunciation project van be found here, .

If you want to know more, please read the original blog or follow Timo’s new DataCamp course called Communicating with Data in the Tidyverse.