0% found this document useful (0 votes)
17 views

Python Libraries For Location Intelligence

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views

Python Libraries For Location Intelligence

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Python Libraries for Geospatial (Remote Sensing and GIS)

Python Library Description

GeoPandas ● Geopandas is like Pandas meet GIS.


● It extends the datatypes used by pandas to allow spatial operations on geometric types.
● Geometric operations are performed by shapely. It further depends on fiona for file access and matplotlib for
plotting.
● Here is the Quick Start Guide.

“MNSP” ● Classical Matplotlib, NumPy, SciPy and Pandas are usually handy for spatial data structures and algorithms, data
visualization, multidimensional image processing and regular mathematical transformation.

Shapely ● With Shapely, you can create shapely geometry objects (e.g. Point, Polygon, Multipolygon) and manipulate them,
e.g. buffer, calculate the area or an intersection etc.

Fiona ● Fiona can read and write real-world data using multi-layered GIS formats and zipped virtual file systems and
integrates readily with other Python GIS packages such as pyproj, Rtree, and Shapely.

ipyleaflet ● If you want to create interactive maps, ipyleaflet is a fusion of Jupyter notebook and Leaflet.
● You can control an assortment of customizations like loading basemaps, geojson, and widgets.
● It also gives a wide range of map types to pick from including choropleth, velocity data, and side-by-side views.

Folium ● Just like ipyleaflet, Folium allows you to leverage leaflet to build interactive web maps.
● It gives you the power to manipulate your data in Python, then you can visualize it with the leading open-source
JavaScript library

Imageio ● Imageio is a Python library that provides an easy interface to read and write a wide range of image data, including
animated images, volumetric data, and scientific formats.

PyQGIS ● QGIS, the free and open source community-driven GIS software.

● PyQGIS is the Python environment inside QGIS with a set of QGIS libraries plus the Python tools with the potential of running
other powerful libraries such as Pandas, Numpy or Scikit-learn.

Earth Engine Earth Engine concepts illustrate important concepts about data types such as:
● Image, The fundamental raster data type in Earth Engine.
● ImageCollection, a stack or time-series of images.
● Geometry, the fundamental vector data type in Earth Engine.
● Feature, or a Geometry with attributes.
● FeatureCollection, or a set of features.
● Reducer, an object used to compute statistics or perform aggregations.

If you need any services or support, please reach out to me at


[email protected]

My portfolio site: https://www.sakthigis.com/


● Join, or how to combine datasets (Image or Feature collections) based on time, location, or an attribute property.
● Array, for multi-dimensional analyses.

There are also sections for machine learning, specialized or sensor specific algorithms (e.g. Landsat algorithms), and Code Editor
specific features such as Chart, Earth Engine apps, and data (asset) management.

Geemap ● Geemap is intended more for science and data analysis using Google Earth Engine (GEE)

GeoPlot ● A high-level geospatial data visualization library.


● It’s an extension to cartopy and matplotlib which makes mapping easy: like seaborn for geospatial.
● Here is the QuickStart Guide.

ArcPy ● ArcPy library is for Esri ArcGIS.


● ArcPy is meant for geoprocessing operations.
● But it’s not only for spatial analysis, it’s also for data conversion, management, and map production with Esri
ArcGIS.

SciKit-Image ● Scikit-Image is for image manipulation, e.g. histogram adjustments, filter, segmentation/edge detection operations,
texture feature extraction etc.

SciKit-Learn ● SKLearn is a machine learning library for Regression, classification, dimensionality reductions etc.
● Heavily used for Feature Extraction and data-preprocessing.

Descartes ● Descartes nables plotting of shapely geometries as matplotlib paths or patches.


● Also it is a dependency for the geometry plotting functions of geopandas.

RasterStats ● RasterStats is used for zonal statistics.


● Extracts statistics from rasters files or numpy arrays based on geometries.

Rasterio ● Rasterio is the go-to library for raster data handling.


● It lets you read/write raster files to/from numpy arrays, offers many convenient ways to manipulate these array (e.g.
masking, vectorizing etc.) and can handle transformations of coordinate reference systems.
● Just like any other numpy array, the data can also be easily plotted, e.g. using the matplotlib library.

PySAL ● The Python Spatial Analysis Library contains a multitude of functions for spatial analysis, statistical modeling and
plotting. It is intended to support the development of high-level applications.

xarray ● xarray labels the dimensions of the multidimensional numpy array and combines this with many functions and the
syntax of the pandas library (e.g. groupby, rolling window, plotting).
● Great for handling extensive image time series stacks.

PyProj ● PyProj library works with spatial referencing systems.


● It can project and transform coordinates with a range of geographic reference systems.
● PyProj can also perform geodetic calculations and distances for any given datum.

If you need any services or support, please reach out to me at


[email protected]

My portfolio site: https://www.sakthigis.com/


GDAL/OGR ● The GDAL library is used for translating between GIS formats and extensions.
● QGIS, ArcGIS, ERDAS, ENVI, and GRASS GIS and almost all GIS software use it for translation in some way.

RSGISLib ● The RSGISLib library is a set of remote sensing tools for raster processing and analysis.
● To name a few, it classifies, filters, and performs statistics on imagery.
● My personal favorite is the module for object-based segmentation and classification (GEOBIA).

ReportLab ● ReportLab library is one of the most satisfying libraries on this list.
● I say this because GIS often lacks sufficient reporting capabilities. Especially, if you want to create a report
template, this is a fabulous option.

MapClassify ● MapClassify implements a family of classification schemes for choropleth maps.


● It is focused on the determination of the number of classes, and the assignment of observations to those classes.

RTree RTree provides a number of advanced spatial indexing features such as -


● Nearest neighbor search
● Intersection search
● Multi-dimensional indexes
● Clustered indexes (store Python pickles directly with index entries)

WhiteBoxTools ● It is used for geospatial applications and workflow automation.


● By combining the WhiteboxTools library with a high-level scripting language, such as Python, users are capable of creating
powerful stand-alone geospatial applications and workflow automation scripts.

pydeck ● PyDeck is high-scale spatial rendering in Python.


● Here is the QuickStart Guide.

GeoAlchemy 2 ● GeoAlchemy 2 provides extensions to SQLAlchemy for working with spatial databases.
● GeoAlchemy 2 focuses on PostGIS.

Spectral ● Spectral Python (SPy) is a pure Python module for processing hyperspectral image data.
● It has functions for reading, displaying, manipulating, and classifying hyperspectral imagery.
● It can be used interactively from the Python command prompt or via Python scripts.

Mapnik ● Mapnik is an open-source mapping toolkit for desktop and server based map rendering.


If you need any services or support, please reach out to me at


[email protected]

My portfolio site: https://www.sakthigis.com/

You might also like