krithin / gullies Goto Github PK
View Code? Open in Web Editor NEWVisualizations of shortest path routes in road networks.
License: GNU General Public License v3.0
Visualizations of shortest path routes in road networks.
License: GNU General Public License v3.0
While I've had some success using lat,long locations taken from wikipedia (https://en.wikipedia.org/wiki/List_of_towns_in_New_York) there should be a way to extract that directly from the OSM image.
E.g. for a US map it might be nice if we could support the classic Albers-USA projection.
When rendering an image with a huge number of destination points (>10k) the line simplification step starts to become very slow (> 1h for routes to 20k points)
There's an obvious quadratic step in there that could be sped up by shrinking the relevant bits of the mergeable_segments set. Ways to do that include:
Using a pair of kd trees to store segments - indexed by both start and end points - and then using them to find the nearest neighbours of the segment endpoints
Splitting out the mergeable_segments set by segment weight - that could help if the weights are well distributed. I suspect that a majority of the segments are going to be of weight 1, however, so this may not buy is very much.
That limit was put in place back when I was trying to use plotly to generate the output.
Now we're instead doing some custom line simplification in plotmatplotlib.py (and also using matplotlib instead of plotly js to do the actual rendering) it's no longer necessary, and in particular it confuses things when using the new getlocations.py script to generate a custom number of destination locations from an OSM snapshot.
like argparse or something, instead of reading out argv values by hand.
That will let us support nice things like overrideable default values for e.g. the lat-long coords of the point that all the routes drain into.
With sample output plots!
Right now we explicitly set an image size that results in an image with a 4:3 aspect ratio. This happens to work out okay for plots of the continental US or NY state, but for plotting other things we should probably figure out a good aspect ratio for the data we're plotting.
It's fine to start off by assuming that we'll want an equirectangular projection, so x and y coordinates on the plot map linearly to degrees of longitude and latitude; eventually that might change if we want to support 'real' map projections.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.