All Projects → kuanb → Peartree

kuanb / Peartree

Licence: mit
peartree: A library for converting transit data into a directed graph for sketch network analysis.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Peartree

public-transit-tools
Tools for working with GTFS public transit data in ArcGIS
Stars: ✭ 126 (+8.62%)
Mutual labels:  transit, gtfs, spatial-analysis, network-analysis
Osmnx
OSMnx: Python for street networks. Retrieve, model, analyze, and visualize street networks and other spatial data from OpenStreetMap.
Stars: ✭ 3,357 (+2793.97%)
Mutual labels:  gis, spatial-analysis, graphs
R5
Routing engine for multimodal (transit/bike/walk/car) networks with a particular focus on public transit.
Stars: ✭ 153 (+31.9%)
Mutual labels:  modeling, transit, gtfs
Transitland Datastore
Transitland's centralized web service API for both querying and editing aggregated transit data from around the world
Stars: ✭ 101 (-12.93%)
Mutual labels:  transit, gtfs
Home Assistant Config
🏠 Fully documented Home Assistant configuration for a smart-looking place. 😎 Be sure to ⭐️ my repo and copy ideas!
Stars: ✭ 258 (+122.41%)
Mutual labels:  transit, gtfs
Mapnificent
Mapnificent shows you areas you can reach with public transport in a given time.
Stars: ✭ 302 (+160.34%)
Mutual labels:  transit, gtfs
gtfs-utils
Utilities to process GTFS data sets.
Stars: ✭ 19 (-83.62%)
Mutual labels:  transit, gtfs
Pgrouting
Repository contains pgRouting library. Development branch is "develop", stable branch is "master"
Stars: ✭ 804 (+593.1%)
Mutual labels:  spatial-analysis, network-analysis
Node Gtfs
Import GTFS transit data into SQLite and query routes, stops, times, fares and more.
Stars: ✭ 323 (+178.45%)
Mutual labels:  transit, gtfs
Loader
deploy
Stars: ✭ 6 (-94.83%)
Mutual labels:  transit, gtfs
Landsat8 scene calculator
Creates NDVI, SAVI, RBG, NIR, short wave infrared, agriculture, geology, and bathymetric GeoTIFF files using Landsat8 imagery.
Stars: ✭ 37 (-68.1%)
Mutual labels:  gis, spatial-analysis
shadow-accrual-maps
Accumulated shadow data computed for New York City
Stars: ✭ 15 (-87.07%)
Mutual labels:  gis, spatial-analysis
VIATRA-Generator
An efficient graph solver for generating well-formed models
Stars: ✭ 21 (-81.9%)
Mutual labels:  graphs, modeling
transit model
Managing transit data with Rust
Stars: ✭ 33 (-71.55%)
Mutual labels:  transit, gtfs
Workshops
Public materials for Statnet Workshops
Stars: ✭ 34 (-70.69%)
Mutual labels:  network-analysis, graphs
Urbansprawl
Open framework for calculating spatial urban sprawl indices and performing disaggregated population estimates using open data
Stars: ✭ 48 (-58.62%)
Mutual labels:  gis, spatial-analysis
Awesome Transit
Community list of transit APIs, apps, datasets, research, and software 🚌🌟🚋🌟🚂
Stars: ✭ 713 (+514.66%)
Mutual labels:  transit, gtfs
Tidytransit
R package for working with the General Transit Feed Specification (GTFS)
Stars: ✭ 84 (-27.59%)
Mutual labels:  transit, gtfs
transitime
TheTransitClock real-time transit information system
Stars: ✭ 60 (-48.28%)
Mutual labels:  transit, gtfs
transitland-atlas
an open directory of mobility feeds and operators — powers both Transitland v1 and v2
Stars: ✭ 55 (-52.59%)
Mutual labels:  transit, gtfs

============= peartree 🍐🌳

.. image:: https://img.shields.io/gitter/room/nwjs/nw.js.svg :target: https://gitter.im/peartree_transit

.. image:: https://img.shields.io/pypi/v/peartree.svg :target: https://pypi.python.org/pypi/peartree

.. image:: https://img.shields.io/travis/kuanb/peartree.svg?branch=master :target: https://travis-ci.org/kuanb/peartree

.. image:: https://codecov.io/gh/kuanb/peartree/branch/master/graph/badge.svg :target: https://codecov.io/gh/kuanb/peartree

peartree is a library for converting GTFS <https://developers.google.com/transit/gtfs/>_ feed schedules into a representative directed network graph. The tool uses Partridge <https://github.com/remix/partridge>__ to convert the target operator schedule data into Pandas <https://github.com/pandas-dev/pandas>__ dataframes and then NetworkX <https://networkx.github.io/>_ to hold the manipulated schedule data as a directed multigraph.

.. image:: https://raw.githubusercontent.com/kuanb/peartree/master/examples/example.gif

Above, an example of multiple Bay Area transit operators being incrementally loaded into peartree.

Installation

.. code:: console

pip install peartree

Usage

See a full notebook at this gist <https://gist.github.com/kuanb/c54d0ae7ee353cac3d56371d3491cf56>_ to see a simple, step-by-step iPython Notebook pulling in an AC Transit GTFS feed and converting it to a NetworkX graph.

.. code:: python

import peartree as pt

path = 'path/to/actransit_gtfs.zip'

# Automatically identify the busiest day and
# read that in as a Partidge feed
feed = pt.get_representative_feed(path)

# Set a target time period to
# use to summarize impedance
start = 7*60*60  # 7:00 AM
end = 10*60*60  # 10:00 AM

# Converts feed subset into a directed
# network multigraph
G = pt.load_feed_as_graph(feed, start, end)

Examples

I've yet to produce a full how-to guide for this library, but will begin to populate this section with any blog posts or notebooks that I or others produce, that include workflows using peartree.

Calculating betweeness centrality with Brooklyn bus network <http://kuanbutts.com/2017/12/13/betweenness-centrality-peartree/>_

Combining a peartree transit network and an OpenStreetMap walk network <http://kuanbutts.com/2018/12/24/peartree-with-walk-network/>_

Generating comparative acyclic route graphs <http://kuanbutts.com/2018/03/15/comparative-routes-mpl/>_

Coalescing transit network graphs and spectral clustering methods <http://kuanbutts.com/2018/04/01/spectral-cluster-transit/>_

Exploratory graph analysis with betweenness and load centrality <http://simplistic.me/playing-with-gtfs-iii-geo-graphs.html>_

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].