geo2topo {geojsonio} | R Documentation |
GeoJSON to TopoJSON and back
Description
GeoJSON to TopoJSON and back
Usage
geo2topo(x, object_name = "foo", quantization = 0, ...)
topo2geo(x, ...)
Arguments
x |
GeoJSON or TopoJSON as a character string, json, a file path, or url |
object_name |
(character) name to give to the TopoJSON object created. Default: "foo" |
quantization |
(numeric) quantization parameter, use this to
quantize geometry prior to computing topology. Typical values are powers of
ten ( |
... |
for |
Value
An object of class json
, of either GeoJSON or TopoJSON
See Also
topojson_write()
, topojson_read()
Examples
# geojson to topojson
x <- '{"type": "LineString", "coordinates": [ [100.0, 0.0], [101.0, 1.0] ]}'
z <- geo2topo(x)
jsonlite::prettify(z)
## Not run:
library(leaflet)
leaflet() %>%
addProviderTiles(provider = "Stamen.Terrain") %>%
addTopoJSON(z)
## End(Not run)
# geojson to topojson as a list
x <- list(
'{"type": "LineString", "coordinates": [ [100, 0], [101, 1] ]}',
'{"type": "LineString", "coordinates": [ [110, 0], [110, 1] ]}',
'{"type": "LineString", "coordinates": [ [120, 0], [121, 1] ]}'
)
geo2topo(x)
# change the object name created
x <- '{"type": "LineString", "coordinates": [ [100.0, 0.0], [101.0, 1.0] ]}'
geo2topo(x, object_name = "HelloWorld")
geo2topo(x, object_name = "4")
x <- list(
'{"type": "LineString", "coordinates": [ [100, 0], [101, 1] ]}',
'{"type": "LineString", "coordinates": [ [110, 0], [110, 1] ]}',
'{"type": "LineString", "coordinates": [ [120, 0], [121, 1] ]}'
)
geo2topo(x, "HelloWorld")
geo2topo(x, c("A", "B", "C"))
# topojson to geojson
w <- topo2geo(z)
jsonlite::prettify(w)
## larger examples
file <- system.file("examples", "us_states.topojson", package = "geojsonio")
topo2geo(file)
[Package geojsonio version 0.11.3 Index]