Python 3.6.8
Python Package | Version |
---|---|
smopy | 0.0.7 |
networkx | 2.4 |
pandas | 1.0.3 |
numpy | 1.18.1 |
matplotlib | 3.2.0 |
gdal | 2.4.1(2040100) |
It is advised to freeze these libraries at the above mentioned versions to avoid running into issues related to version incompatibilities as few of the libraries used in this project are not very well maintained.
To install the dependencies(all except GDAL):
foo@bar:~/ValerioTrials$ pip install -r requirements.txt
To install GDAL, use the whl file included as instructed below:
foo@bar:~/ValerioTrials$ python -m pip install "path to folder/GDAL-2.4.1-cp36-cp36m-win_amd64.whl"
(If python and pip don't work, try the same commands with python3 and pip3)
The script housing the main algorithm is Plotting/route plotter.py
After cloning the repo :
NOTE: Make sure you are in the Plotting folder.
foo@bar:~/ValerioTrials$ cd Plotting
foo@bar:~/ValerioTrials/Plotting$ python "route plotter.py"
(If the above command doesn't work, try the same with python3
-
Source: Chanakyapuri, Delhi
Destination: Mayur Vihar, Delhi
Battery level: 10%
Vehicle: Revolt RV400
-
Source: Sarita Vihar, Delhi
Destination: Rajouri Garden, Delhi
Battery level: 35%
Vehicle: Mahindra E2O P2 Automatic
Source for visualising the shapefile, add the entire zipped folder(Plotting/delhi_highway.zip)
- The shapefile is very sparse, a denser shapefile would mean more nodes in the graph and hence a more accurate representation of a given location on the map. Also a denser shapefile would mean including the smaller 'gully' roads which users could take to drastically cut down travel time.
- A better geocoding service(GoogleMaps for instance) would increase the accuracy as remote locations could be fed as locations to the script.
- Use a better tool for plotting the retrieved map(again, GoogleMaps for instance) would lend much greater control over the zoom levels and the POV.
- Charging station database has too few entries(which also perhaps reflects the ground reality of the EV scene in India currently)
- Currently the data and the script both are focussed in the Delhi-NCR region but porting the same functionality for a Pan-India script should be very easy.
- The range calculation script in use is far from representing a real-world scenario.