add_nodes_to_graph
with “sc” networks (#217, thanks to @diegoteca)pairwise
parameter added to dodgr_dists_categorical
(#201)dodgr_dists_nearest()
(#203)weight_streenet()
function for wt_profile="bicycle"
to return many more bicycle-relevant columns (#207).add_nodes_to_graph
, #103add_nodes_to_graph
, “dist_tol” and “intersections_only” (#103)dodgr_vertices
to re-calculate if cached vertices don’t match current graph.remove_duplicated_edges()
for SC-class networks.nocache
parameter to dodgr_contract_graph
, to enable forced re-calculation of contracted graphs (#194)dodgr_to_sf
) from carrying across extra columns (#194; thanks to @sriramab)match_pts_to_graph()
to return geodesic distance to point of edge intersection.dodgr_deduplicate_graph()
to reduce duplicated edges and insert minimal distances/times (#187)weight_streetnet
function now returns standard graphs even when turn_penalty = TRUE
; compound junctions are calculated within each function (#190).weight_streetnet.sc
to respect “bicycle” and “foot” tags for those weighting profiles (#189)match_pts_to_graph()
renamed to match_pts_to_verts()
match_pts_to_graph()
function matches to graph edges, using nearest perpendicular intersection (issue #103)dodgr_paths
pairwise calculation shifted to C++, thanks to @dcooleydodgr_flowmap
to work on both sf
and sc
streetnets.dodgr_flows_aggregate()
dodgr_flows_
functions from contract = FALSE
to contract = TRUE
weight_railway
function renamed sf_lines
-> x
(for consistency with all other weight_
functions).save_dodgr_streetnet
and load_dodgr_streetnet
functions; thanks to idea from @FlxPododgr_dists_categorical
dodgr_streetnet
, thanks to @LeshunXu (#174)|
-> ||
)dists_categorical(proportions_only = TRUE)
to ensure all edge types are aggregated (final type was previously not aggregated).dodgr_dists_categorical
function + accompanying vignetteweight_streetnet
now includes turn restrictions when input data are extracted with dodgr_streetnet_sc
(#136 thanks to @edzer)weighting_profiles$penalties
dodgr_streetnet_sc()
now extracts many additional features useful for controlling access restrictions (see #159)dodgr_centrality
has new vert_wts
parameter to weight centrality by user-specified weights (#162)dodgr_flows_disperse()
thanks for @romainFrkeep_cols
param in weight_streetnet()
; #140 thanks to @agila5integer
not numeric
dodgr_centrality
function, and associated helper functions.dodgr_flows_si
functionnorm_sums
to dodgr_flows_aggregate
merge_directed_flows
renamed to merge_directed_graph
, with added option of specifying columns to merge.pairwise
parameter to dodgr_distances
; see issue #127dodgr_insert_vertex
to add new vertices to graph; see #40dodgr_dists
when number of from points >> number of to pointsweight_streetnet.sc
that prevented keep_cols
from workingdodgr_paths
, thanks to @agila5dodgr_isochrones
, dodgr_isodistances
, and dodgr_isoverts
functionsdodgr_flows_aggregate
and dodgr_flows_disperse
dodgr_flows_disperse
allows k
to be a vector, with different coefficients for each from
point.weight_streetnet
for sc
objects automatically adds component columnweight_streetnet.sc(..., wt_profile = 1)
dodgr_full_cycles
for SC
class objectscallr
package).dodgr_cache_off
function added to suppress primary caching, for cases where immediate usage is critical.dodgr_contract_graph
returns the contracted graph only, instead of former version which return list of graph
and edge_map
(the edge_map
is cached and re-loaded when needed for graph uncontraction).weight_streetnet
renamed to turn_penalty
hampi
data to remove factor columnsweight_streetnet
function now returns edge times for all Open Street Map networks extracted with the osmdata
package.SC
format data from osmdata::osmdata_sc()
dodgr_times
function to calculate journey times, including differential speeds and penalties for intersections and traffic lights.dodgr::weighting_profiles
data changed from single data.frame
to list with additional parameters determining speeds and time penalties for dodgr_times
function; former data.frame
is now dodgr::weighting_profiles$weighting_profiles
.write_dodgr_wt_profile
writes full profile to local .json
file for editing and subsequent use via weight_streetnet(wt_profile_file=<local_file_name.json>)
.dodgr_dists()
, dodgr_paths()
, and dodgr_flows()
can no longer be used to automatically download street networks, thus former parameters wt_profile
and expand
have been removed; networks must be explicitly downloaded with dodgr_streetnet()
.dodgr_fundamental_cycles
and dodgr_full_cycles
dodgr_sflines_to_poly
to convert sf
collections of LINESTRING
object into corresponding enclosed POLYGON
objects.dodgr_to_sf
creates full sf
objects, extending dodgr_to_sfc
igraph_to_dodgr
converts igraph
objects into dodgr
formatdodgr_uncontract_graph
to convert from contracted back into original, uncontracted from, including any additional data appended on to contracted graph.tinytex
rendering of svg
dodgr_dists (heap = "set")
with integer distancesdodgr_to_igraph
weight_streetnet
is now a method, with implementations for objects of classes .sf
and .sc
.weight_railway
to weight a network for railway routing.dodgr_dists
implements Dijkstra paths with std::set sorting through new option dodgr_dists(..., heap = "set")
(It’s slower than others, but good for sake of completeness).dodgr_streetnet
now accepts polygonal bbox
argument, and uses osmdata::trim_osmdata
to trim resultant network to within that polygon (issue #50).weight_streetnet
and dodgr_flows_aggregateto include a non-OSM example from
stplanr::routes_fast` (issue #45).dodgr_dist
calculations wrong (Earth’s radius is 6371, not 3671!) - thanks to @chrijoweight_streetnet
function now accepts data.frame
objects defining wt_profile
, enabling modification and direct re-submission of dodgr::weighting_profiles
weighting_profiles$value
modified to 0-1 scores rather than previous percentage values.weight_streetnet
flags any highway types not present in nominated or submitted weighting profile.dodgr_paths
now has additional pairwise
parameter to enable paths only between matched pairs of from
and to
points (so returning n
paths rather than n^2
), thanks to @mem48.dodgr_to_sf
deprecated to dodgr_to_sfc
(#43)dodgr_paths
and simple data.frame
s, thanks to James Smith.match_pts_to_graph
has additional connected
parameter to allow points to be matched only to largest connected component.dodgr_flowmap
plots maps of flows. Currently only writes .png files, because large networks can not be effectively plotted on graphic devices.dodgr_flows
has option to routes flows from a set of source origins to all points in a network, attenuated by distance from those origins.dodgr_to_sf
converts a spatially-explicit dodgr
graph into Simple Features (sf
) format.match_pts_to_graph
now accepts Simple Features (sf) collections of sfc_POINT
objects to be matched.Tidy C++ code that flagged errors on CRAN solaris machine. Nothing else.
dodgr_paths
, for returning explicit shortest path routes.dodgr_flows
, for aggregting flows across a network from multiple origin and destination points.merge_directed_flows
, to reduce aggregated directional flows to non-directional equivalent values useful for visualisation.weight_streetnet
now accepts arbitrary sf
-formatted networks via specification of custom weighting profiles, along with highway type and ID columns in data.frame.dodgr_dists
inherit the names of routing points (from
and to
parameters).Initial CRAN release.