Skip to main content

GeoJSON renderer for JupyterLab

Project description

jupyterlab-geojson

A JupyterLab extension for rendering GeoJSON

demo

Requirements

  • JupyterLab >= 3.0

Install

pip install jupyterlab-geojson

Usage

To render GeoJSON output in IPython:

from IPython.display import GeoJSON

GeoJSON({
    "type": "Feature",
    "geometry": {
        "type": "Point",
        "coordinates": [-118.4563712, 34.0163116]
    }
})

To use a specific tileset:

GeoJSON(
    data={
        "type": "Feature",
        "geometry": {
            "type": "Point",
            "coordinates": [-118.4563712, 34.0163116]
        }
    }, url_template="https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token=[MAPBOX_ACCESS_TOKEN]",
    layer_options={
        "id": "mapbox.streets",
        "attribution" : '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a>'
    }
)

To render GeoJSON on Mars:

GeoJSON(
  data={
      "type": "Feature",
      "geometry": {
          "type": "Point",
          "coordinates": [11.8, -45.04]
      }
  }, url_template="http://s3-eu-west-1.amazonaws.com/whereonmars.cartodb.net/{basemap_id}/{z}/{x}/{y}.png",
  layer_options={
      "basemap_id": "celestia_mars-shaded-16k_global",
      "attribution" : "Celestia/praesepe",
      "tms": True,
      "minZoom" : 0,
      "maxZoom" : 5
  }
)

To render a .geojson or .geo.json file, simply open it.

Contributing

Development install

Note: You will need NodeJS to build the extension package.

The jlpm command is JupyterLab's pinned version of yarn that is installed with JupyterLab. You may use yarn or npm in lieu of jlpm below.

# Clone the repo to your local environment
# Change directory to the jupyterlab-geojson directory
# Install package in development mode
pip install -e .
# Link your development version of the extension with JupyterLab
jupyter labextension develop . --overwrite
# Rebuild extension Typescript source after making changes
jlpm run build

You can watch the source directory and run JupyterLab at the same time in different terminals to watch for changes in the extension's source and automatically rebuild the extension.

# Watch the source directory in one terminal, automatically rebuilding when needed
jlpm run watch
# Run JupyterLab in another terminal
jupyter lab

With the watch command running, every saved change will immediately be built locally and available in your running JupyterLab. Refresh JupyterLab to load the change in your browser (you may need to wait several seconds for the extension to be rebuilt).

By default, the jlpm run build command generates the source maps for this extension to make it easier to debug using the browser dev tools. To also generate source maps for the JupyterLab core extensions, you can run the following command:

jupyter lab build --minimize=False

Uninstall

pip uninstall jupyterlab-geojson

Project details


Download files

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

Source Distribution

jupyterlab-geojson-3.2.0.tar.gz (74.2 kB view details)

Uploaded Source

Built Distribution

jupyterlab_geojson-3.2.0-py3-none-any.whl (139.1 kB view details)

Uploaded Python 3

File details

Details for the file jupyterlab-geojson-3.2.0.tar.gz.

File metadata

  • Download URL: jupyterlab-geojson-3.2.0.tar.gz
  • Upload date:
  • Size: 74.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/0.0.0 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2

File hashes

Hashes for jupyterlab-geojson-3.2.0.tar.gz
Algorithm Hash digest
SHA256 9c1515101949b631589e3bd24d6bdd90421dd37948f9bd70879263925458b554
MD5 3be397c094d600bf49f343754a2eb1b1
BLAKE2b-256 bd3d1569189fd392892ba8c4f661622a57fb38d2bf3abb400c76e9ae30676ddc

See more details on using hashes here.

File details

Details for the file jupyterlab_geojson-3.2.0-py3-none-any.whl.

File metadata

  • Download URL: jupyterlab_geojson-3.2.0-py3-none-any.whl
  • Upload date:
  • Size: 139.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/0.0.0 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2

File hashes

Hashes for jupyterlab_geojson-3.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3ce611d9b0c586bc353c46a90e0350f30f3f59e0feaaec909fef47a5eb293718
MD5 df47609337234f98f5004d949a739681
BLAKE2b-256 379c52ad85538be34e27e163327f6ea0943246086d7b314bf5797b3d31b85811

See more details on using hashes here.

Supported by

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