GitHub - geopandas/xyzservices: Source of XYZ tiles providers (original) (raw)

xyzservices - Source of XYZ tiles providers

xyzservices is a lightweight library providing a repository of available XYZ services offering raster basemap tiles. The repository is provided via Python API and as a compressed JSON file.

XYZ tiles can be used as background for your maps to provide necessary spatial context.xyzservices offer specifications of many tile services and provide an easy-to-use tools to plug them into your work, no matter if interactive or static.

Tests codecov PyPi

Quick Start

Using xyzservices is simple and in most cases does not involve more than a line of code.

Installation

You can install xyzservices from conda or pip:

conda install xyzservices -c conda-forge

The package does not depend on any other apart from those built-in in Python.

Providers API

The key part of xyzservices are providers:

import xyzservices.providers as xyz

xyzservices.providers or just xyz for short is a Bunch of providers, an enhanceddict. If you are in Jupyter-like environment, xyz will offer collapsible inventory of available XYZ tile sources. You can also explore it as a standard dict usingxyz.keys(). Once you have picked your provider, you get its details as aTileProvider object with all the details you may need:

xyz.CartoDB.Positron.url 'https://{s}.basemaps.cartocdn.com/{variant}/{z}/{x}/{y}{r}.png'

xyz.CartoDB.Positron.attribution '(C) OpenStreetMap contributors (C) CARTO'

You can also check if the TileProvider needs API token and pass it to the object if needed.

xyz.MapBox.requires_token() True

xyz.MapBox["accessToken"] = "my_personal_token" xyz.MapBox.requires_token() False

Providers JSON

After the installation, you will find the JSON used as a database of providers inshare/xyzservices/providers.json if you want to use it outside of a Python ecosystem.

Contributors

xyzservices is developed by a community of enthusiastic volunteers and lives undergeopandas GitHub organization. You can see a full list of contributors here.

The main group of providers is retrieved from the leaflet-providersproject that contains both openly accessible providers as well as those requiring registration. All of them are consideredfree.

If you would like to contribute to the project, have a look at the list ofopen issues, particularly those labeled asgood first issue.

License

BSD 3-Clause License

Resources coming from the leaflet-providersproject are licensed under BSD 2-Clause License (© 2013 Leaflet Providers)