Learn R Programming

stplanr (version 0.1.4)

mapshape: Simplify geometry of spatial objects with the mapshaper library

Description

Simplify geometry of spatial objects with the mapshaper library

Usage

mapshape(shp, percent = 10, ms_options = "", dsn = "mapshape", silent = FALSE)

Arguments

shp
A spatial object to be simplified.
percent
A number between 1 and 100 stating how aggressively to simplify the object (1 is a very aggressive simplification)
ms_options
Text string of options passed to mapshaper such as
dsn
The name of the temporary file to write to (deleted after use)
silent
Logical determining whether the function call is printed to screen no-topology (a flag) and snap-interval=1 (a key value pair). See the mapshaper documentation for details: https://github.com/mbloch/mapshaper/wiki/Command-Reference.

The percent argument refers to the percentage of removable points to retain. So percent = 1 is a very aggressive simplication, saving a huge amount of hard-disk space.

Details

Note: more advance R/mapshaper tools are provided by the rmapshaper package: https://github.com/ateucher/rmapshaper. Calls the JavaScript command-line GIS application mapshaper (https://github.com/mbloch/mapshaper) from the system to simplify geographic features, and then tidies up. mapshaper must be installed and available to system. mapshape writes new a file to disk. Thanks to Richard and Adrian Ellison for demonstrating this in R.

See Also

gSimplify

Examples

Run this code
## Not run: 
# data(routes_fast)
# shp <- routes_fast[1,]
# rfs10 <- mapshape(shp)
# rfs5 <- mapshape(shp, percent = 5)
# rfs1 <- mapshape(shp, percent = 1)
# plot(shp)
# plot(rfs10, add = TRUE, col ="red")
# plot(rfs5, add = TRUE, col ="blue")
# plot(rfs1, add = TRUE, col = "grey")
# # snap the lines to the nearest interval
# rfs_int <- mapshape(shp, ms_options = "snap-interval=0.001")
# plot(shp)
# plot(rfs_int, add = TRUE)
# ## End(Not run)

Run the code above in your browser using DataLab