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

编辑推荐精选

商汤小浣熊

商汤小浣熊

最强AI数据分析助手

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

imini AI

imini AI

像人一样思考的AI智能体

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

Keevx

Keevx

AI数字人视频创作平台

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

即梦AI

即梦AI

一站式AI创作平台

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

扣子-AI办公

扣子-AI办公

AI办公助手,复杂任务高效处理

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

TRAE编程

TRAE编程

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

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

AI工具TraeAI IDE协作生产力转型热门
蛙蛙写作

蛙蛙写作

AI小说写作助手,一站式润色、改写、扩写

蛙蛙写作—国内先进的AI写作平台,涵盖小说、学术、社交媒体等多场景。提供续写、改写、润色等功能,助力创作者高效优化写作流程。界面简洁,功能全面,适合各类写作者提升内容品质和工作效率。

AI辅助写作AI工具蛙蛙写作AI写作工具学术助手办公助手营销助手AI助手
问小白

问小白

全能AI智能助手,随时解答生活与工作的多样问题

问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。

热门AI助手AI对话AI工具聊天机器人
Transly

Transly

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

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

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
下拉加载更多