Simple, concise geographical visualization in Python
Alternatives To Geoviews
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Bokeh18,3702,936845a day ago187December 01, 2023770bsd-3-clausePython
Interactive Data Visualization in the browser, from Python
Scientific Visualization Book9,367
6 months ago17otherPython
An open access book on scientific visualization using python and matplotlib
Clip5,1371743 years ago32June 25, 20131apache-2.0C++
Create charts from the command line
Vega Lite4,3263061994 days ago466November 10, 2023699bsd-3-clauseTypeScript
A concise grammar of interactive graphics, built on Vega.
Scottplot4,042324a day ago141October 03, 202314mitC#
Interactive plotting library for .NET
2 days ago129mpl-2.0C++
The Time Series Visualization Tool that you deserve.
a month ago40November 09, 202122mitGo
Generate HTTP load and plot the results in real-time
a month ago1March 03, 202146mitC++
Matplot++: A C++ Graphics Library for Data Visualization 📊🗾
Quantstats3,486262 months ago62July 05, 202263apache-2.0Python
Portfolio analytics for quants, written in Python
Chartify3,393552 months ago25October 12, 202348apache-2.0Python
Python library that makes it easy for data scientists to create charts.
Alternatives To Geoviews
Select To Compare

Alternative Project Comparisons

Geographic visualizations for HoloViews.

Build Status Linux/MacOS/Windows Build Status
Coverage codecov
Latest dev release Github tag dev-site
Latest release Github release PyPI version geoviews version conda-forge version defaults version
Docs gh-pages site
Support Discourse

What is it?

GeoViews is a Python library that makes it easy to explore and visualize any data that includes geographic locations. It has particularly powerful support for multidimensional meteorological and oceanographic datasets, such as those used in weather, climate, and remote sensing research, but is useful for almost anything that you would want to plot on a map! You can see lots of example notebooks at, and a good overview is in our blog post announcement.

GeoViews is built on the HoloViews library for building flexible visualizations of multidimensional data. GeoViews adds a family of geographic plot types based on the Cartopy library, plotted using either the Matplotlib or Bokeh packages.

Each of the new GeoElement plot types is a new HoloViews Element that has an associated geographic projection based on The GeoElements currently include Feature, WMTS, Tiles, Points, Contours, Image, QuadMesh, TriMesh, RGB, HSV, Labels, Graph, HexTiles, VectorField and Text objects, each of which can easily be overlaid in the same plots. E.g. an object with temperature data can be overlaid with coastline data using an expression like gv.Image(temperature) * gv.Feature(cartopy.feature.COASTLINE). Each GeoElement can also be freely combined in layouts with any other HoloViews Element , making it simple to make even complex multi-figure layouts of overlaid objects.


If you want the latest GeoViews, you will need an up-to-date environment. Updating is never risk-free, but it is a good idea in general and the commands conda list --revisions and conda install --revision N can usually recover from updates gone awry.

conda update --all

You can then install GeoViews and all of its dependencies with the following:

conda install -c pyviz geoviews

Alternatively you can install the geoviews-core package, which only installs the minimal dependencies required to run geoviews:

conda install -c pyviz geoviews-core

In certain circumstances proj6 issues may prevent installation or cause issues (particularly with cartopy<=0.17). If you encounter these issues ensure you also pin proj4::

conda install proj4<6

Once installed you can copy the examples into the current directory using the geoviews command and run them using the Jupyter notebook:

geoviews examples
cd geoviews-examples
jupyter notebook

(Here geoviews examples is a shorthand for geoviews copy-examples --path geoviews-examples && geoviews fetch-data --path geoviews-examples.)

In the classic Jupyter notebook environment and JupyterLab, first make sure to load the gv.extension(). GeoViews objects will then render themselves if they are the last item in a notebook cell. For versions of jupyterlab>=3.0 the necessary extension is automatically bundled in the pyviz_comms package, which must be >=2.0. However note that for version of jupyterlab<3.0 you must also manually install the JupyterLab extension with:

jupyter labextension install @pyviz/jupyterlab_pyviz

Once you have installed JupyterLab and the extension launch it with:


If you want to try out the latest features between releases, you can get the latest dev release by specifying -c pyviz/label/dev in place of -c pyviz.

Additional dependencies

If you need to install libraries only available from conda-forge, such as Iris (to use data stored in Iris cubes) or xesmf, you should install from conda-forge:

conda create -n env-name -c pyviz -c conda-forge geoviews iris xesmf
conda activate env-name

GeoViews itself is also installable using pip, but to do that you will first need to have installed the dependencies of cartopy, or else have set up your system to be able to build them.

Popular Visualization Projects
Popular Plot Projects
Popular User Interface Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.