argo-marketplace / RadRoads

Using OSMnx to find Rad Streets in any city! - https://medium.com/a-r-g-o/rad-roads-using-osmnx-68fc8b15f046
MIT License
11 stars 4 forks source link

Iowa crooked street #19

Open vr00n opened 6 years ago

vr00n commented 6 years ago

To test later

  1. Iowa is home to the most crooked street in the world—Snake Alley in Burlington. The street was designed to link the downtown area with the shopping district. Because of the angle and sharp turns, it is restricted to one-way traffic only—downhill.

How to submit an issue?

vr00n commented 6 years ago

@ywnch The RadRoads Curviest output for Burlington, IA is as follows:

Curviest road: Mason Road Apartments
road dist.: 360.65
shortest dist.: 8.31
sinuosity: 43.42282

      distance      length                                     name  sinuosity
54    8.305500  360.648192                    Mason Road Apartments  43.422817
179  81.492696  569.886288  [u'Newbury Circle', u'Columbia Street']   6.993097
35   78.506624  529.443527        [u'Herblo Drive', u'Bock Street']   6.743934
313  80.083217  504.927926        [u'Easy Street', u'Randall Lane']   6.305041
217  68.791401  413.029163                           Indian Terrace   6.004081 

Snake Alley is represented as https://www.openstreetmap.org/way/15882296

Can you check why this has not been included on our output?

ywnch commented 6 years ago

A very quick guess from existing limitation is that the terminal nodes of the roads are not extracted correctly. This limitation still takes some time to fix. One example is a road having multiple lanes and thus edges, if the function ends up grabbing nodes that are close to each other, then the sinuosity increased drastically. The sinuosity for snake alley is 1.44 calculated by hand, in this case, may be squeezed all the way down by inaccurate results. I might look into whether querying and grouping by osmid provides a solution. Currently, Lombard Street does not show up in SF either.

vr00n commented 6 years ago

Seems like Snake Alley is not included in G = ox.graph_from_place(query=city, network_type=ntype, which_result=n)

I even tried changing ntype to all - no dice :/

image

image

ywnch commented 6 years ago

For this one, I just fixed it. The previous script was mistakenly locked with "drive" ntype, while Snake Alley is a service road. The new script should be able to return the network correctly with specified ntype (now required as input). Will look into the larger issue some other time.

vr00n commented 6 years ago

Confirmed. OK i will keep this open until we are able to use Snake Alley as a baseline for most curvy....

image

ywnch commented 6 years ago

Thanks for validating!