NOTE: This function has been deprecated. Please use gtfs_traveltimes instead.

gtfs_isochrone(
  gtfs,
  from,
  start_time,
  end_time,
  day = NULL,
  from_is_id = FALSE,
  grep_fixed = TRUE,
  route_pattern = NULL,
  minimise_transfers = FALSE,
  hull_alpha = 0.1,
  quiet = FALSE
)

Arguments

gtfs

A set of GTFS data returned from extract_gtfs or, for more efficient queries, pre-processed with gtfs_timetable.

from

Name, ID, or approximate (lon, lat) coordinates of start station (as stop_name or stop_id entry in the stops table, or a vector of two numeric values).

start_time

Desired departure time at from station, either in seconds after midnight, a vector of two or three integers (hours, minutes) or (hours, minutes, seconds), an object of class difftime, hms, or lubridate.

end_time

End time to calculate isochrone

day

Day of the week on which to calculate route, either as an unambiguous string (so "tu" and "th" for Tuesday and Thursday), or a number between 1 = Sunday and 7 = Saturday. If not given, the current day will be used. (Not used if gtfs has already been prepared with gtfs_timetable.)

from_is_id

Set to TRUE to enable from parameter to specify entry in stop_id rather than stop_name column of the stops table (same as from_to_are_ids parameter of gtfs_route).

grep_fixed

If FALSE, match station names (when passed as character string) with grep(..., fixed = FALSE), to allow use of grep expressions. This is useful to refine matches in cases where desired stations may match multiple entries.

route_pattern

Using only those routes matching given pattern, for example, "^U" for routes starting with "U" (as commonly used for underground or subway routes. To negate the route_pattern -- that is, to include all routes except those matching the pattern -- prepend the value with "!"; for example "!^U" will include all services except those starting with "U". (This parameter is not used at all if gtfs has already been prepared with gtfs_timetable.)

minimise_transfers

If TRUE, isochrones are calculated with minimal-transfer connections to each end point, even if those connections are slower than alternative connections with transfers.

hull_alpha

alpha value of non-convex hulls returned as part of result (see ?alphashape::ashape for details).

quiet

Set to TRUE to suppress screen messages (currently just regarding timetable construction).

Value

An object of class gtfs_isochrone, including sf-formatted points representing the from station (start_point), the terminal end stations (end_points), and all intermediate stations (mid_points) each with the earliest possible arrival time, along with lines representing the individual routes. A non-convex ("alpha") hull is also returned (as an sfPOLYGON object), including measures of area and "elongation", which equals zero for a circle, and increases towards one for more elongated shapes.

Details

Calculate a single isochrone from a given start station, returning the list of all stations reachable to the specified end_time.

See also

Examples

berlin_gtfs_to_zip ()
#> [1] "/tmp/Rtmpdg7K8g/vbb.zip"
f <- file.path (tempdir (), "vbb.zip")
g <- extract_gtfs (f)
#> Unzipping GTFS archive
#> 
✔ Unzipped GTFS archive  
#> Extracting GTFS feed
#> 
✔ Extracted GTFS feed 
#> Converting stop times to seconds
#> 
✔ Converted stop times to seconds 
#> Converting transfer times to seconds
#> 
✔ Converted transfer times to seconds 
g <- gtfs_timetable (g)
#> Day not specified; extracting timetable for sunday
from <- "Alexanderplatz"
start_time <- 12 * 3600 + 600
end_time <- start_time + 600
if (FALSE)  # function is deprecated!
ic <- gtfs_isochrone (g,
                      from = from,
                      start_time = start_time,
                      end_time = end_time)
plot (ic)
#> Error in plot(ic): object 'ic' not found