Creating drive time polygons using Open Source tools?

GRASS v.net.iso will give you a result like this:

enter image description here

You might not want to run a convex hull algorithm on this output. Imagine the blue roads: A convex hull around them would contain a lot of parts that are not reachable in the time represented by "blue".

Instead, you might want to look into alpha-shapes (related question: What are Definition, Algorithms and Practical Solutions for Concave Hull?)

alpha shape sketch

You can create drive time isochrones using pgRouting and QGIS (as described here). I didn't use OSM in this case, but of course you could build your routable network based on OSM (see osm2pgrouting tool).

enter image description here

(full resolution)

For a pure PostGIS solution, you can use pgRouting alpha shape function. Here is a comparison of alpha shapes as implemented in pgRouting and the approach I presented in the previous update:

enter image description here

Colored areas represent the results of alpha shape function, black lines are the results of the interpolation approach described earlier. The catchment areas are less detailed using pgRouting's alpha shapes. Also, there seems to be no way to vary the value of alpha to create more detailed representations.


GRASS' v.net.iso can be used to to create the drive time 'network' which you could pass into a 'convex hull' command to get a polygon. Perhaps not ideal, but would work!


Well, potentially you could use v.net.iso from GRASS GIS. However it doesn't create polygons (AFAIK), but splits the lines by cost classes from the source.

As for calculating drive times from OSM, you could import the data into GRASS with v.in.osm, and use the v.net.iso to calculate the cost zones. If you wanted travel times and you don't have road speed limits potentially you could calculate the speed limit based on some function of road class.