Nothing
## ---- include = FALSE---------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup--------------------------------------------------------------------
library(abstr)
## ----getlocations, eval=FALSE, echo=FALSE-------------------------------------
# home = stplanr::geo_code("potternewton park")
# work = stplanr::geo_code("university of leeds")
# park = stplanr::geo_code("woodhouse moore park")
# cafe = stplanr::geo_code("heart centre leeds")
# cafe = stplanr::geo_code("worsley building leeds")
## ----places-------------------------------------------------------------------
places = tibble::tribble(
~name, ~x, ~y,
"Home", -1.524, 53.819,
"Work", -1.552, 53.807,
"Park", -1.560, 53.812,
"Cafe", -1.556, 53.802
)
places_sf = sf::st_as_sf(places, coords = c("x", "y"), crs = 4326)
plot(places_sf, pch = places$name)
# mapview::mapview(places_sf, pch = places$name)
## ----placestoosimple, eval=FALSE, echo=FALSE----------------------------------
# places = tibble::tribble(
# ~name, ~x, ~y,
# "Home", 5, 0,
# "Work", 2, 5,
# "Park", 1, 4,
# "Cafe", 2, 4
# )
# places_sf = sf::st_as_sf(places, coords = c("x", "y"))
# plot(places_sf, pch = places$name)
## ----lines--------------------------------------------------------------------
od = tibble::tribble(
~o, ~d, ~mode, ~departure, ~person,
"Home", "Work", "Bike", "08:30", 1,
"Work", "Park", "Walk", "11:30", 1,
"Park", "Cafe", "Walk", "12:15", 1,
"Cafe", "Work", "Walk", "12:45", 1,
"Work", "Home", "Bike", "17:00", 1
)
## -----------------------------------------------------------------------------
od_sf = od::od_to_sf(od, places_sf)
plot(od_sf["departure"], reset = FALSE, key.pos = 1, lwd = 6:2)
plot(places_sf$geometry, pch = places$name, add = TRUE, cex =2)
# mapview::mapview(od_sf["departure"])
## -----------------------------------------------------------------------------
(od::od_coordinates(od_sf))
## -----------------------------------------------------------------------------
departure_times = c(
8.5,
11.5,
12.25,
12.75,
17
)
set.seed(42) # if you want deterministic results, set a seed.
od_sf$departure = ab_time_normal(hr = departure_times, sd = 0.15, n = length(departure_times))
## -----------------------------------------------------------------------------
od_json1 = ab_json(od_sf[1, ], scenario_name = "activity")
od_json = ab_json(od_sf, scenario_name = "activity")
## ----absave-------------------------------------------------------------------
ab_save(od_json1, f = "scenario1.json")
## -----------------------------------------------------------------------------
# Save in the current directory:
ab_save(od_json, f = "activity_leeds.json")
# Save in a directory where you cloned the abstreet repo for the simulation
# ab_save(od_json, f = "~/orgs/a-b-street/abstreet/activity_leeds.json")
## ---- eval=FALSE, echo=FALSE--------------------------------------------------
# # Regenerate json data
# ab_save(od_json, "inst/extdata/activity_leeds.json")
## ---- eval=FALSE--------------------------------------------------------------
# file.edit("scenario1.json")
## -----------------------------------------------------------------------------
od_sf_roundtrip = ab_sf("activity_leeds.json")
# Or in the file saved in the abstr package
# od_sf_roundtrip = ab_sf(json = system.file("extdata/activity_leeds.json", package = "abstr"))
identical(od_sf$geometry, od_sf_roundtrip$geometry)
## ---- include=FALSE-----------------------------------------------------------
file.remove("scenario1.json")
## -----------------------------------------------------------------------------
head(sao_paulo_activity_sf_2)
sp_2_json = ab_json(sao_paulo_activity_sf_2, mode_column = "mode", scenario_name = "2-agents")
## ---- eval=FALSE--------------------------------------------------------------
# ab_save(sp_2_json, "activity_sp_2.json")
## -----------------------------------------------------------------------------
head(sao_paulo_activity_sf_20)
sp_20_json = ab_json(sao_paulo_activity_sf_20, mode_column = "mode", scenario_name = "20-agents")
## ---- eval=FALSE--------------------------------------------------------------
# ab_save(sp_20_json, "activity_sp_20.json") # save in current folder, or:
# # save to directory where you cloned the abstreet repo
# # (replace '~/orgs...' with the path to your local directory)
# # ab_save(sp_20_json, "~/orgs/a-b-street/abstreet/activity_sp_20.json")
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.