Skip to main content

GeoViews is a Python library that makes it easy to explore and visualize geographical, meteorological, and oceanographic datasets, such as those used in weather, climate, and remote sensing research.

Project description



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 geoviews.org, 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 cartopy.crs. 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.

Installation

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:

jupyter-lab

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.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

geoviews-1.9.3.tar.gz (789.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

geoviews-1.9.3-py2.py3-none-any.whl (500.5 kB view details)

Uploaded Python 2Python 3

File details

Details for the file geoviews-1.9.3.tar.gz.

File metadata

  • Download URL: geoviews-1.9.3.tar.gz
  • Upload date:
  • Size: 789.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/0.0.0 pkginfo/1.7.1 requests/2.26.0 setuptools/60.1.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for geoviews-1.9.3.tar.gz
Algorithm Hash digest
SHA256 bd38ec92a39d212892b51544d09b010a8bfe5056e826bb4dcf3fbde454f130db
MD5 d87841b1c0415e7c9b3d97fbac30c216
BLAKE2b-256 fc1c66568f862646dc2c608677c039586faeab7738df5d55dc4edffbaf4cf98e

See more details on using hashes here.

File details

Details for the file geoviews-1.9.3-py2.py3-none-any.whl.

File metadata

  • Download URL: geoviews-1.9.3-py2.py3-none-any.whl
  • Upload date:
  • Size: 500.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/0.0.0 pkginfo/1.7.1 requests/2.26.0 setuptools/60.1.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for geoviews-1.9.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 a923c7f5ac802dc5ddff2d9044aa7608f791d258f7b5a6c52abb873aa6f094e4
MD5 6e780fb73105b95c4cdb16f36d76edea
BLAKE2b-256 231fcd7ed2b07cea28d05e9b5189e437f79a6c6eac189931bbc7632f2b28ae92

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page