{"id":32177436,"url":"https://github.com/raphaelquast/eomaps","last_synced_at":"2026-01-21T23:17:25.903Z","repository":{"id":37863872,"uuid":"410829039","full_name":"raphaelquast/EOmaps","owner":"raphaelquast","description":"A library to create interactive maps of geographical datasets","archived":false,"fork":false,"pushed_at":"2025-06-03T19:59:42.000Z","size":101251,"stargazers_count":360,"open_issues_count":17,"forks_count":27,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-09-27T21:22:13.987Z","etag":null,"topics":["cartopy","earth-observation","geospatial","gis","interactive-maps","interactive-visualization","mapping","matplotlib","plotting","python","visualization"],"latest_commit_sha":null,"homepage":"https://eomaps.readthedocs.io/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/raphaelquast.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":".zenodo.json"}},"created_at":"2021-09-27T09:54:17.000Z","updated_at":"2025-09-17T22:55:50.000Z","dependencies_parsed_at":"2023-09-22T21:39:06.135Z","dependency_job_id":"236f0388-f742-4515-a92f-865298adb8af","html_url":"https://github.com/raphaelquast/EOmaps","commit_stats":{"total_commits":2901,"total_committers":6,"mean_commits":483.5,"dds":0.05342985177524995,"last_synced_commit":"71361494f5af1fb6674c9862339d0e40946f5e89"},"previous_names":["raphaelquast/maps"],"tags_count":88,"template":false,"template_full_name":null,"purl":"pkg:github/raphaelquast/EOmaps","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raphaelquast%2FEOmaps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raphaelquast%2FEOmaps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raphaelquast%2FEOmaps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raphaelquast%2FEOmaps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/raphaelquast","download_url":"https://codeload.github.com/raphaelquast/EOmaps/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raphaelquast%2FEOmaps/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280325300,"owners_count":26311419,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-21T02:00:06.614Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cartopy","earth-observation","geospatial","gis","interactive-maps","interactive-visualization","mapping","matplotlib","plotting","python","visualization"],"created_at":"2025-10-21T20:06:12.097Z","updated_at":"2025-10-21T20:06:16.128Z","avatar_url":"https://github.com/raphaelquast.png","language":"Python","readme":"\n\u003cp align=\"center\"\u003e\n    \u003ca href=https://github.com/raphaelquast/EOmaps\u003e\n    \u003cimg src=\"https://github.com/raphaelquast/EOmaps/blob/master/docs/source/_static/logo.png?raw=true\" alt=\"EOmaps logo\" width=\"55%\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n\n|     Tests \u0026 Review      | [![tests](https://github.com/raphaelquast/EOmaps/actions/workflows/testMaps.yml/badge.svg?branch=master)](https://github.com/raphaelquast/EOmaps/actions/workflows/testMaps.yml) | [![codecov](https://codecov.io/gh/raphaelquast/EOmaps/graph/badge.svg)](https://codecov.io/gh/raphaelquast/EOmaps)  |                    [![pyOpenSci](https://tinyurl.com/y22nb8up)](https://github.com/pyOpenSci/software-submission/issues/138)                    |\n| :---------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------: |\n| Package \u0026 Documentation |                                                [![pypi](https://img.shields.io/pypi/v/eomaps)](https://pypi.org/project/eomaps/)                                                 | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/eomaps.svg)](https://anaconda.org/conda-forge/eomaps) | [![Documentation Status](https://readthedocs.org/projects/eomaps/badge/?version=latest)](https://eomaps.readthedocs.io/en/latest/?badge=latest) |\n|   License \u0026 Citation    |                [![License: BSD 3 clause](https://img.shields.io/badge/License-BSD_3_clause-blue.svg)](https://github.com/raphaelquast/EOmaps/blob/master/LICENSE)                |  [![10.5281/zenodo.6459598](https://zenodo.org/badge/410829039.svg)](https://zenodo.org/badge/latestdoi/410829039)  |                                                                                                                                                 |\n\n\n\u003c/div\u003e\n\n\u003ca href=\"https://www.buymeacoffee.com/raphaelquast\" target=\"_blank\"\u003e\u003cimg src=\"https://www.buymeacoffee.com/assets/img/custom_images/yellow_img.png\" alt=\"Buy Me A Coffee\" align=\"right\" style=\"height: 25px !important;\" \u003e\u003c/a\u003e\n\u003ca href=\"https://app.gitter.im/#/room/#EOmaps:gitter.im\" target=\"_blank\"\u003e\u003cimg src=\"https://img.shields.io/gitter/room/raphaelquast/EOmaps?style=social\" alt=\"chat on gitter\" align=\"left\" style=\"height: 20px !important;\" \u003e\u003c/a\u003e\n\n----\n\n\u003ch3 align=\"center\"\u003eA python package to visualize and analyze geographical datasets.\u003c/h3\u003e\n\n\u003ctable\u003e\n\u003ctr\u003e\u003ctd\u003e  \n\u003ci\u003e\u003cb\u003eEOmaps\u003c/b\u003e aims to provide a comprehensive, flexible, well-documented and easy-to-use API to create publication-ready maps that can directly be used for interactive data analysis.\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003c/table\u003e\n\n## What can I do with EOmaps?\n\n**EOmaps** is built on top of [matplotlib](https://matplotlib.org/) and [cartopy](https://scitools.org.uk/cartopy/docs/latest/) and integrates well with the scientific python infrastructure (e.g., [numpy](https://numpy.org/), [pandas](https://pandas.pydata.org/), [geopandas](https://geopandas.org/), [xarray](https://xarray.dev/) etc.), allowing you to visualize point-, raster- or vector-datasets provided in almost any format you can imagine, no matter if you're dealing with just a few unsorted datapoints or multi-dimensional stacks of global high-resolution datasets.  \n\nFigures created with EOmaps are multi-layered, so you can (transparently) overlay and interactively compare your datasets with ease. With the accompanying GUI widget, you can quickly switch layers, change the layout, examine the large collection of features and web-map services, and explore the capabilities of EOmaps.\nOnce you're map is ready, you can export it as high-resolution image or vector-graphic for further editing.\nLeveraging the powers of matplotlib, you can also embed interactive maps in Jupyter Notebooks, on a webpage or in GUI frameworks like Qt, tkinter etc..\n\n\u003e [!IMPORTANT]\n\u003e\n\u003e EOmaps is 100% free and open-source.  \n\u003e As such, acknowledgement is extremely important to allow continued support and development of the package.\n\u003e  \n\u003e Did EOmaps help in your research? $\\Rightarrow$ **Add a ✔️ Citation to your publication!**\n\u003e\n\u003e \u003ca href=\"https://doi.org/10.5281/zenodo.6459598\"\u003e\u003cimg src=\"https://zenodo.org/badge/410829039.svg\" alt=\"https://zenodo.org/badge/latestdoi/410829039\" align=\"left\"\u003e\u003c/a\u003e\n\u003e\n\u003e \u003cdetails\u003e\n\u003e \u003csummary\u003eBibTeX\u003c/summary\u003e\n\u003e \u003cbr\u003e\n\u003e The following BibTeX entry uses a DOI that always points to the latest release of EOmaps!\u003cbr\u003e\n\u003e (You can get the DOI for a specific version form the \u003ca href=\"https://doi.org/10.5281/zenodo.6459598\"\u003ezenodo-page\u003c/a\u003e)\n\u003e\n\u003e ```bibtex\n\u003e @software{eomaps,\n\u003e   author       = {Raphael Quast},\n\u003e   title        = {EOmaps: A python package to visualize and analyze geographical datasets.},\n\u003e   doi          = {10.5281/zenodo.6459598},\n\u003e   url          = {https://doi.org/10.5281/zenodo.6459598}\n\u003e }\n\u003e ```\n\u003e  \n\u003e \u003c/details\u003e\n\u003e\n\n## 🚀 Getting started\n\nHead over to the start-page of the \u003ca href=https://eomaps.readthedocs.io/\u003e\u003cb\u003e📖 Documentation \u003c/b\u003e\u003c/a\u003e to get an overview of all available features and functionalities!\n\n\u003e [!TIP]\n\u003e For a quick hands-on introduction, checkout this article on dev.to:  \n\u003e [Geographic data visualization and analysis with EOmaps: Interactive maps in python!](https://dev.to/raphaelquast/geographic-data-visualization-and-analysis-with-eomaps-interactive-maps-in-python-48e1)\n\n\n## 🔨 Installation\n\nTo install **EOmaps** (and all its dependencies) with the [conda](https://docs.conda.io/projects/conda/en/stable/) package-manager, simply use:\n```python\nconda install -c conda-forge eomaps\n```\n\n\u003e [!TIP]\n\u003e To get a \u003cu\u003e**huge speedup**\u003c/u\u003e, use [mamba](https://mamba.readthedocs.io/en/latest/) to solve the dependencies!\n\u003e ```python\n\u003e mamba install -c conda-forge eomaps\n\u003e ```\n\n\n\u003e Advanced users can also use `pip` to install **EOmaps** (and selectively install optional dependency groups)\n\u003e ```python\n\u003e pip install eomaps       # install only minimal required dependencies\n\u003e pip install eomaps[all]  # install all optional dependencies\n\u003e ...\n\u003e ```\n\nFor more detailes, have a look at the [Installation Instructions](https://eomaps.readthedocs.io/en/dev/installation.html) or the quickstart guide [\"From 0 to EOmaps\"](https://eomaps.readthedocs.io/en/dev/quickstart_quide.html#quickstart-guide)!\n\n\n## 🌟 Contribute\n\nInterested in contributing to EOmaps? **Awesome!**  \nYou can find detailed instructions on how to setup EOmaps for development in the [Contribution Guide](https://eomaps.readthedocs.io/en/dev/contribute/contribute.html)!\n\n\u003e Found a bug or got an idea for an interesting feature?  \n\u003e Open an [issue](https://github.com/raphaelquast/EOmaps/issues) or start a [discussion](https://github.com/raphaelquast/EOmaps/discussions), and I'll see what I can do!  \n\n\n---------------\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=2 valign=\"center\"\u003e\n        \u003ca href=\"https://eomaps.readthedocs.io/en/dev/user_guide/interactivity/api_companion_widget.html\"\u003e\u003cimg src=\"https://github.com/raphaelquast/EOmaps/assets/22773387/fe27e290-019e-4179-929d-d33bc590758e\" alt=\"EOmaps GUI Example\"\u003e\u003c/a\u003e\n    \u003c/td\u003e\n      \u003ctd valign=\"center\"\u003e\n        \u003ca href=\"https://eomaps.readthedocs.io/en/dev/auto_examples/widgets/timeseries.html#example-timeseries\"\u003e\u003cimg src=\"https://github.com/raphaelquast/EOmaps/blob/dev/docs/source/_static/example_images/example_timeseries.gif?raw=true\" alt=\"EOmaps Timeseries Example\"\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd valign=\"center\"\u003e\n        \u003ca href=\"https://eomaps.readthedocs.io/en/dev/auto_examples/callbacks/callbacks.html#example-callbacks\"\u003e\u003cimg src=\"https://github.com/raphaelquast/EOmaps/blob/dev/docs/source/_static/example_images/example_callbacks.gif?raw=true\" alt=\"EOmaps Callbacks Example\"\u003e\u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd valign=\"center\" style=\"width:50%\"\u003e\n        \u003ca href=\"https://eomaps.readthedocs.io/en/dev/auto_examples/images/webmaps.html#example-webmaps\"\u003e\u003cimg src=\"https://github.com/raphaelquast/EOmaps/blob/dev/docs/source/_static/example_images/example_webmaps.gif?raw=true\" alt=\"EOmaps Webmaps Example\"\u003e\u003c/a\u003e\n      \u003c/td\u003e\n    \u003ctd valign=\"center\"\u003e\n        \u003ca href=\"https://eomaps.readthedocs.io/en/dev/user_guide/map_features/api_webmaps.html#setting-webmap-properties\"\u003e\u003cimg src=\"https://github.com/raphaelquast/EOmaps/blob/dev/docs/source/_static/minigifs/advanced_wms.gif?raw=true\" alt=\"EOmaps Webmaps Example 2\"\u003e\u003c/a\u003e\n      \u003c/td\u003e\n    \u003ctd valign=\"center\"\u003e\n        \u003ca href=\"https://eomaps.readthedocs.io/en/dev/auto_examples/geomap_components/scalebars.html#example-scalebars\"\u003e\u003cimg src=\"https://github.com/raphaelquast/EOmaps/blob/dev/docs/source/_static/example_images/example_scalebars.gif?raw=true\" alt=\"EOmaps Scalebars Example\"\u003e\u003c/a\u003e\n      \u003c/td\u003e\n    \u003ctd valign=\"center\"\u003e\n        \u003ca href=\"https://eomaps.readthedocs.io/en/dev/auto_examples/Maps/multiple_maps.html#example-multiple-maps\"\u003e\u003cimg src=\"https://github.com/raphaelquast/EOmaps/blob/dev/docs/source/_static/example_images/example_multiple_maps.gif?raw=true\" alt=\"EOmaps Multiple Maps Example\"\u003e\u003c/a\u003e\n      \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd valign=\"center\"\u003e\n        \u003ca href=\"https://eomaps.readthedocs.io/en/dev/user_guide/interactivity/api_layout_editor.html\"\u003e\u003cimg src=\"https://github.com/raphaelquast/EOmaps/blob/dev/docs/source/_static/minigifs/layout_editor.gif?raw=true\" alt=\"EOmaps LayoutEditor Example\"\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd valign=\"center\"\u003e\n        \u003ca href=\"https://eomaps.readthedocs.io/en/dev/auto_examples/geometry/vector_data.html#example-vector-data\"\u003e\u003cimg src=\"https://github.com/raphaelquast/EOmaps/blob/dev/docs/source/_static/example_images/example_vector_data.gif?raw=true\" alt=\"EOmaps Vector Data Example\"\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd valign=\"center\"\u003e\n        \u003ca href=\"https://eomaps.readthedocs.io/en/dev/auto_examples/geometry/lines.html#example-lines\"\u003e\u003cimg src=\"https://github.com/raphaelquast/EOmaps/blob/dev/docs/source/_static/example_images/example_lines.png?raw=true\" alt=\"EOmaps Lines Example\"\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd valign=\"center\"\u003e\n        \u003ca href=\"https://eomaps.readthedocs.io/en/dev/auto_examples/Maps/inset_maps.html#example-inset-maps\"\u003e\u003cimg src=\"https://github.com/raphaelquast/EOmaps/blob/dev/docs/source/_static/example_images/example_inset_maps.png?raw=true\" alt=\"EOmaps InsetMaps Example\"\u003e\u003c/a\u003e\n    \u003c/td\u003e\n\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n----\n\n## ☕ Support\n\nThe development of EOmaps has been supported by:\n\n\u003ca href=\"https://www.tuwien.at/en/mg/geo/rs\"\u003e\u003cimg height=30 align=left src=\"https://github.com/raphaelquast/EOmaps/assets/22773387/1ad88e68-eb16-4549-8159-8b4a6db8ab28\"\u003e TU Wien Department of Geodesy and Geoinformation - Research Area Remote Sensing\u003c/a\u003e\n\n\u003cbr/\u003e\n\n## 🌼 Thanks to\n\n- [Jakob Quast](https://quastquest.jimdofree.com/) for designing the nice logo!\n","funding_links":["https://www.buymeacoffee.com/raphaelquast"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraphaelquast%2Feomaps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fraphaelquast%2Feomaps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraphaelquast%2Feomaps/lists"}