I was curious what a (European) city map would look like if the streets and its crossroads were aligned along a regular grid.
So, I tried it out with the old town of Delft.
All nodes in the map above represent a crossing (and, in a few cases, a dead end). Each line represents a street running between two crossings (or a crossing and a dead end).
The geography represented by the graph roughly corresponds with the location of the lines and nodes in the graph, but the graph has been simplified along a grid with equal spacing between nodes, with the objective of including as few diagonal lines as possible.
Lines ‘leaving’ the graph are roads connecting the old town with the reset of the city.
I had to take some creative liberty with dual-lane roads. Along canals, it’s obvious that these represent two streets (one on either side of the canal), but in a few other cases, this is less obvious.
Twice, in the south of the town, tunnels allow for roads crossing without these roads actually meeting.
I appreciate the aesthetic. But, a more interesting version would identify the lines as the streets they represent.
Then, perhaps adding travel times between nodes (on foot, say), would also make this a simple base for optimising travel times from any one node to any other node.
Which indeed implies that any mapping application, internally, has a representation of the covered road network exactly in the way this graph is set up.