I am interested in identifying relevant packages for visualizing spatio-temporal data in Python. The information to display is travel data, with an origin/destination, relevant times, and the waypoints taken. I made great progress in Folium but found several limitations. Here's where I got to: https://i.imgur.com/6brguFw.gif . (In the GIF, green is a passenger-trip and red is an empty-trip). Folium was a good start, but I was unable to dynamically plot relevant information. This includes cumulative statistics associated with the visualization (current number of miles traveled) or put geospatial markers for certain events versus time (park events longer than 2 hours, for instance).

I am interested in a package(s) that will enable me to:

  • Dynamically plot lines (series of known points) on a map.
  • Ability to control when lines are shown. Folium was quite good for this point; in the visualization shown above I had full control over how long a line stayed on the map before disappearing
  • Ability to format lines with a high degree of control. In Folium, I was unable to do things like change the linestyle from solid to dashed
  • Ability to show a "live" value of a changing integer. Miles traveled, time of day, etc. It'd be great to show a dashboard of summary statistics sensitive to the current time.
  • Access to typical map controls, such as plotting standard open source base- layers (such as OpenStreetMaps) and controlling the map crop. A static crop is fine, I don't necessarily need to be able to move dynamically.

Finally, I'd like to acknowledge this visualization of the same dataset: http://chriswhong.github.io/nyctaxi/ The visualization is infamous at this point, and serves as the inspiration for my project. However, I do have different constraints / motivations (such as the project being in Python) so I'd like to avoid simply refactoring his code.

I'm currently considering dash/plotly and bokeh, but wanted to understand any relevant limitations before getting in too deep (such as the inability to dynamically plot information in Folium). Even feedback on impressions / experiences would be valuable at this stage of the project.

migrated from stackoverflow.com Feb 18 at 17:58

This question came from our site for professional and enthusiast programmers.


The PyViz stack is (mostly) built on Bokeh to make it easier to do visualizations like these. In particular, the Panel library makes it simple to put together live dashboards, and the GeoViews library makes it easy to work with geospatial data.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy