python-resources-for-earth-sciences

python-resources-for-earth-sciences

Python在地球科学中的应用 地理空间分析和水文建模资源汇总

该项目收集了地球科学领域广泛使用的开源Python库,包括水文学、气象学、地理空间分析、气候学和海洋学等方向。资源按功能分类,涵盖地理空间分析、制图、水文数据收集和建模等。项目为地球科学研究和应用提供了全面的Python工具参考,可有效提升数据分析和建模效率。

地球科学Python库水文学地理空间分析气象学Github开源项目
<!--# Python Resources for Earth Sciences <a href="mailto:javedali28@gmail.com"><img src="https://img.shields.io/badge/gmail-D14836?&style=for-the-badge&logo=gmail&logoColor=white" alt="javedali28@gmail.com"></a> --> <p align="center"> <img src="https://user-images.githubusercontent.com/15319503/115857198-63b72d80-a3fb-11eb-82bc-a37b77e7521c.png?raw=true" alt="Python Resources for Earth Sciences"/> </p> <div>

This repository contains a list of open-source Python libraries broadly relevant to Earth Sciences (Hydrology, Meteorology, Geospatial, Climatology, Oceanography, etc.). The libraries are broadly grouped according to their function; however, many have functionality that spans multiple categories.

If you have any comments or suggestions for additions or improvements for this repository, submit an issue or a pull request. If you can’t contribute on GitHub, send me an email.

If you find these resources useful, please give this repository a star ⭐️ and you can also buy me some coffee ☕️.

<p align="center"> <a href="https://www.buymeacoffee.com/javedali99" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" style="width: 150px;" ></a> </p>
<h3 align="center">:mailbox: Connect with me :mailbox:</h3> <p align="center"> <a href="https://twitter.com/javedali99"><img src="https://img.shields.io/badge/twitter-%231DA1F2.svg?&style=for-the-badge&logo=twitter&logoColor=white" alt="Twitter@javedali"></a> <a href="https://www.linkedin.com/in/javedali18"><img src="https://img.shields.io/badge/linkedin-%230077B5.svg?&style=for-the-badge&logo=linkedin&logoColor=white" alt="LinkedIn@javedali"></a> <a href="https://javedali.net"><img src="https://img.shields.io/badge/Website%20-%2302569B.svg?&style=for-the-badge&logo=WordPress&logoColor=white" alt="LinkedIn@javedali"></a> </p>

Content


Geospatial Analysis and Mapping

  • Geopandas: GeoPandas is an open source project to make working with geospatial data in python easier. GeoPandas extends the datatypes used by pandas to allow spatial operations on geometric types.

  • whitebox: The whitebox Python package is built on WhiteboxTools, an advanced geospatial data analysis platform. WhiteboxTools can be used to perform common geographical information systems (GIS) analysis operations, such as cost-distance analysis, distance buffering, and raster reclassification.

  • PySal: A python spatial analysis library for open source and crossed platform Geospatial Data Science

  • MovingPandas: MovingPandas implements a Trajectory class and corresponding methods based on GeoPandas. It provides trajectory data structures and functions for analysis and visualization.

  • Shapely: Shapely is a Python package for manipulation and analysis of planar geometric objects. It is based on the widely deployed GEOS (the engine of PostGIS) and JTS libraries.

  • Rasterio: Rasterio is a GDAL and Numpy-based Python library designed to make your work with geospatial raster data more productive, more fun — more Zen. It is a highly useful module for raster processing which you can use for reading and writing several different raster formats in Python. Python automatically registers all known GDAL drivers for reading supported formats when importing the module.

  • Georasters: The GeoRasters package is a python module that provides a fast and flexible tool to work with GIS raster files. It provides the GeoRaster class, which makes working with rasters quite transparent and easy

  • Fiona: It reads and writes geographic data files and thereby helps Python programmers integrate geographic information systems with other computer systems.

  • geemap: A Python package for interactive mapping with Google Earth Engine, ipyleaflet, and ipywidgets.

  • Awesome Earth Engine: A curated list of Google Earth Engine resources includng many python libraries

  • python-geospatial: A collection of Python packages for geospatial analysis with binder-ready notebook examples

  • geonotebook: Jupyter notebook extension for geospatial visualization and analysis developed by NASA

  • Verde: It is a Python library for processing spatial data (bathymetry, geophysics surveys, etc) and interpolating it on regular grids (i.e., gridding).

  • pygis: pygis is a collection of Python snippets for geospatial analysis.

  • geehydro: A Python package for mapping inundation dynamics using Google Earth Engine

  • earthengine-py-notebooks: A collection of 360+ Jupyter Python notebook examples for using Google Earth Engine with interactive mapping

  • PcRaster: It is a collection of software targeted at the development and deployment of spatio-temporal environmental models.

  • PyGeoprocessing: A Python/Cython based library that provides a set of commonly used raster, vector, and hydrological operations for GIS processing.

  • Pysheds: Simple and fast watershed delineation in python.

  • GeoDjango: GeoDjango is an included contrib module for Django that turns it into a world-class geographic Web framework. GeoDjango strives to make it as simple as possible to create geographic Web applications, like location-based services.

  • Lidar: Terrain and hydrological analysis based on LiDAR-derived digital elevation models (DEM).

  • PYWR: Spatial allocation tool

  • ParTerra-Python: The Participatory Terrain model deploys an algorithm to fuse together data from OpenStreetMap (OSM) and any base elevation dataset to create a high-resolution digital terrain model for any area in the world.

  • salem: Adds geolocalised subsetting, masking, and plotting operations to xarray's data structures via accessors

  • Regionmask: Plotting and creation of masks of spatial regions

  • xshape: Tools for working with shapefiles, topographies, and polygons in xarray

  • hydro-osm: Hydro-osm is a toolbox to convert OpenStreetMap data into data layers that can be readily used for hydrological and hydraulic modelling.

  • Collocate: Collocate xarray trajectories in arbitrary physical dimensions

  • HoloViews: Library designed to make data analysis and visualization seamless and simple

  • GeoViews: 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

  • Datashader: Graphics pipeline system for creating meaningful representations of large datasets quickly and flexibly

  • Panel: Create custom interactive web apps and dashboards by connecting user-defined widgets to plots, images, tables, or text

  • hvPlot: A high-level plotting API for the PyData ecosystem built on HoloViews

  • EarthSim: Tools for working with and visualizing environmental simulations

  • Cartopy: Easy cartographic (maps) data visualization.

  • Geoviews: Explore and visualize geographic data using HoloViews.

  • xESMF: Universal regridder for geospatial data.

  • gridded: A single way to work with results from any hydrodynamic/oceanographic model regardless of what type of grid it was computed on.

  • pyResample: Resampling geospatial image data.

  • ESMPy: Interface to the Earth System Modeling Framework (ESMF) regridding utility.

  • pyproj: Interface to PROJ (cartographic projections and coordinate transformations library).

  • GeostatsPy: GeostatsPy Python package for spatial data analytics and geostatistics. Mostly a reimplementation of GSLIB, Geostatistical Library (Deutsch and Journel, 1992) in Python.

  • eo-learn: Earth observation processing framework for machine learning in Python

  • SciKit-GStat: SciKit-Gstat is a scipy-styled analysis module for geostatistics.

  • leafmap: Leafmap is a Python package for interactive mapping and geospatial analysis with minimal coding in a Jupyter environment.

  • GeoWombat: Utilities for geospatial data

  • pyGIS: pyGIS is an online textbook covering all the core geospatial functionality available in Python. This includes handling vector and raster data, satellite remote sensing, machine learning and deep learning applications.

  • PyGMT: PyGMT is a library for processing geospatial and geophysical data and making publication quality maps and figures. It provides a Pythonic interface for the Generic Mapping Tools (GMT), a command-line program widely used in the Earth Sciences.

  • geospatial-machine-learning: A curated list of resources focused on Machine Learning in Geospatial Data Science.

</br>

Hydrology

Data Collection

  • HKVFEWSPY: Connection to the DelftFEWS servers

  • HyRiver: HyRiver is a software stack consisting of six Python libraries that are designed to aid in watershed analysis through web services. This project includes hydrology and climatology data within the US.

  • Openradar: Library for processing a set of dutch, german and belgian precipitation radars into calibrated composites.

  • Ecohydrolib: Libraries and command-line scripts for performing ecohydrology data preparation workflows.

  • Ulmo: Clean, simple and fast access to public hydrology and climatology data.

  • PyHIS: It is a python library for querying CUAHSI*-HIS** web services

  • Wetterdienst: Python Toolset For Accessing Weather Data From German Weather Service

  • ERA5-tools: Python scripts to download and view ERA5 climatologic data, as well as to extract time series (hourly to monthly data on many atmospheric and land-surface parameters)

  • CAMELS-AUS: Python package to easily load and use the CAMELS-AUS dataset

  • BoM Water: This package has been developed to access to the BoM Water Data Sensor Observation Service (SOS). With a goal to easily and efficiently integrate data into scientific workflows.

  • Eco-Data Manage Toolkit: It is a Python toolkit to facilitate data management for hydrology/limnology applications.

Hydrological Modelling

  • CMF: Catchment Modelling Framework, a hydrologic modelling toolbox.

  • TopoFlow: Spatial hydrologic model (D8-based, fully BMI-compliant).

  • VIC: The Variable Infiltration Capacity (VIC) Macroscale Hydrologic Model.

  • Xanthos: Xanthos is an open-source hydrologic model, written in Python, designed to quantify and analyze global water availability.

  • WRF-Hydro: wrfhydrpy is a Python API for the WRF-Hydro modelling system.

  • pyDEM: PyDEM is a package for topographic (terrain) analysis. It takes in digital elevation model (DEM) rasters, and it outputs quantities like slope, aspect, upstream area, and topographic wetness index.

  • EXP-HYDRO: EXP-HYDRO is a catchment scale hydrological model that operates at a daily time-step. It takes as inputs the daily values of precipitation, air temperature, and potential evapotranspiration, and simulates daily streamflow at the catchment outlet.

  • RRMPG: Rainfall-Runoff modelling playground.

  • LHMP: Lumped Hydrological Models Playground.

  • SMARTPy: Python implementation of the rainfall-runoff model SMART

  • PyStream: Python implementation of the STREAM hydrological rainfall-runoff model.

  • HydrPy: A framework for the development and application of hydrological models based on Python.

  • Catchmod: CATCHMOD is widely used rainfall runoff model in the United Kingdom. It was introduced by Wilby (1994).

  • wflow: wflow consists of a set of Python programs that can be run on the command line and perform hydrological simulations. The models are based on the PCRaster Python framework

  • PyTOPKAPI: PyTOPKAPI is a BSD licensed Python library implementing the TOPKAPI Hydrological model (Liu and Todini, 2002).

  • mhmpy: A Python-API for the mesoscale Hydrological Model.

  • SuperflexPy: A new open source framework for building conceptual hydrological models

  • NeuralHydrology: Python library to train neural networks with a strong focus on hydrological applications

  • StreamStats: Python package for interfacing with the USGS StreamStats API.

  • hidrocomp: Python library for hydrological data analysis

  • PyFlo: It is an open-source Python library for performing hydraulic and hydrology stormwater analysis. Features include network hydraulic grade analysis and time/iteration based storage and flood routing simulations.

  • HydroFunctions: A suite of convenience functions for working with hydrology data in an interactive

编辑推荐精选

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
商汤小浣熊

商汤小浣熊

最强AI数据分析助手

小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。

imini AI

imini AI

像人一样思考的AI智能体

imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。

Keevx

Keevx

AI数字人视频创作平台

Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企业培训与社媒宣传,让全球企业与个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。

即梦AI

即梦AI

一站式AI创作平台

提供 AI 驱动的图片、视频生成及数字人等功能,助力创意创作

下拉加载更多