Mesa-Geo: GIS Extension for Mesa Agent-Based Modeling#

GitHub CI Read the Docs Codecov Code Style PyPI PyPI - License PyPI - Downloads Matrix Chat DOI

Mesa-Geo implements a GeoSpace that can host GIS-based GeoAgents, which are like normal Agents, except they have a geometry attribute that is a Shapely object and a crs attribute for its Coordinate Reference System. You can use Shapely directly to create arbitrary geometries, but in most cases you will want to import your geometries from a file. Mesa-Geo allows you to create GeoAgents from any vector data file (e.g. shapefiles), valid GeoJSON objects or a GeoPandas GeoDataFrame.

Using Mesa-Geo#

To install Mesa-Geo on linux or macOS run

pip install mesa-geo

On windows you should first use Anaconda to install some of the requirements with

conda install fiona pyproj rtree shapely
pip install mesa-geo

Since Mesa-Geo is in early development you could also install the latest version directly from Github via

pip install -e git+https://github.com/mesa/mesa-geo.git#egg=mesa-geo

Take a look at the examples folder for sample models demonstrating Mesa-Geo features.

For more help on using Mesa-Geo, check out the following resources:

Contributing to Mesa-Geo#

Want to join the team or just curious about what is happening with Mesa & Mesa-Geo? You can…

  • Join our Matrix chat room in which questions, issues, and ideas can be (informally) discussed.

  • Come to a monthly dev session (you can find dev session times, agendas and notes at Mesa discussions.

  • Just check out the code at GitHub.

If you run into an issue, please file a ticket for us to discuss. If possible, follow up with a pull request.

If you would like to add a feature, please reach out via ticket or join a dev session (see Mesa discussions). A feature is most likely to be added if you build it!

Don’t forget to check out the Contributors guide.

Citing Mesa-Geo#

To cite Mesa-Geo in your publication, you can click the “Cite this repository” button in the right sidebar of the repository landing page, and choose either the APA or BibTeX citation format.

Indices and tables#