climakitae
A Python toolkit for retrieving, visualizing, and performing scientific analyses with data from the Cal-Adapt Analytics Engine.
Science Score: 36.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
✓Committers with academic emails
6 of 18 committers (33.3%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (17.1%) to scientific vocabulary
Repository
A Python toolkit for retrieving, visualizing, and performing scientific analyses with data from the Cal-Adapt Analytics Engine.
Basic Info
- Host: GitHub
- Owner: cal-adapt
- License: bsd-3-clause
- Language: Python
- Default Branch: main
- Homepage: https://climakitae.readthedocs.io
- Size: 206 MB
Statistics
- Stars: 27
- Watchers: 4
- Forks: 3
- Open Issues: 15
- Releases: 10
Metadata Files
README.md
Climakitae
A powerful Python toolkit for climate data analysis and retrieval from the Cal-Adapt Analytics Engine (AE).
Climakitae provides intuitive tools for accessing, analyzing, and visualizing downscaled CMIP6 data, enabling researchers and practitioners to perform comprehensive climate impact assessments for California.
[!WARNING] This package is under active development. APIs may change between versions.
Key Features
- 🌡️ Comprehensive Climate Data Access: Retrieve climate variables from hosted climate models
- 📊 Downscaled Climate Models: Access dynamical (WRF) and statistical (LOCA2) downscaling methods
- 🗺️ Spatial Analysis Tools: Built-in support for geographic subsetting and spatial aggregation
- 📈 Climate Indices: Calculate heat indices, warming levels, and extreme event metrics
- 🔧 Flexible Data Export: Export to NetCDF, CSV, and Zarr
- 📱 GUI Integration: Works seamlessly with climakitaegui for interactive analysis
About Cal-Adapt
Climakitae is developed as part of the Cal-Adapt Analytics Engine, a platform for California climate data and tools. Cal-Adapt provides access to cutting-edge climate science to support adaptation planning and decision-making.
Getting Started
Installation via Conda
Prerequisites
- Python 3.12
- conda / miniconda
Install 1.3.0 with conda on Linux
For additional details on the latest version and step-by-step installation instructions please visit the wiki
```bash
get the conda lock file from github
curl https://raw.githubusercontent.com/cal-adapt/cae-environments/refs/heads/main/conda-lock/climakitae/1.3.0/conda-linux-64.lock -o conda-linux-64.lock
create and activate your environment
conda create -n climakitae --file conda-linux-64.lock conda activate climakitae
install climakitae
pip install https://github.com/cal-adapt/climakitae/archive/refs/tags/1.3.0.zip ```
Installation via Pip
Prerequisites
- Python 3.12
- pip
Install 1.3.0 with pip on Linux
For additional details on the latest version and step-by-step installation instructions please visit the wiki
```bash
get the requirements.txt file from github
curl https://raw.githubusercontent.com/cal-adapt/climakitae/refs/heads/release-1.3.0/requirements.txt -o requirements.txt
load packages from requirements.txt
pip install -r requirements.txt
install climakitae
pip install https://github.com/cal-adapt/climakitae/archive/refs/tags/1.3.0.zip ```
Basic Usage
```python from climakitae.core.datainterface import getdata
Retrieve temperature data for California
data = getdata( variable="Air Temperature at 2m", downscalingmethod="Dynamical", resolution="9 km", timescale="monthly", scenario="SSP 3-7.0", cached_area="CA" )
Data is returned as an xarray Dataset
print(data) ```
Documentation
| Resource | Description | |----------|-------------| | AE Navigation Guide | Interactive notebook tutorial | | API Reference | Complete API documentation | | AE Notebooks | Sample notebooks and scripts | | Contributing | Development guidelines |
Development Setup
Prerequisites
- Python 3.12
- conda / miniconda
Dev Environment Setup (Linux)
bash
git clone https://github.com/cal-adapt/climakitae.git
cd climakitae
conda create -n climakitae --file conda-linux-64.lock
conda activate climakitae
Running Tests
```bash
Run basic tests
pytest -m "not advanced"
Run all tests
pytest
Run with coverage
pip install pytest-cov pytest --cov=climakitae --cov-report=html ```
Contributing
We welcome contributions! Please see our contributing guidelines for details on:
- 🐛 Reporting bugs
- 💡 Requesting features
- 🔧 Submitting code changes
- 📖 Improving documentation
Quick Development Workflow
Open a ⚙️ code improvement issue describing the feature you'd like to develop.
Then, checkout and setup your branch: ```bash
Fork the repo and create a feature branch
git checkout -b feature/your-feature-name
Make your changes and add tests
...
Run tests and linting
pytest black climakitae/ isort climakitae/
Submit a pull request
```
When submitting a pull request, please tag at least two project maintainers/developers for review.
License
This project is licensed under the BSD 3-Clause License - see the LICENSE file for details.
Related Projects
- climakitaegui - Interactive GUI tools for climakitae
- cae-notebooks - Example notebooks and tutorials
Support
- 📧 Email: analytics@cal-adapt.org
- 🐛 Issues: GitHub Issues
- 💬 Discussions: GitHub Discussions
Contributors
Owner
- Name: Cal-Adapt
- Login: cal-adapt
- Kind: organization
- Website: https://cal-adapt.org
- Repositories: 3
- Profile: https://github.com/cal-adapt
GitHub Events
Total
- Fork event: 1
- Create event: 161
- Commit comment event: 1
- Issues event: 45
- Release event: 7
- Watch event: 7
- Delete event: 142
- Issue comment event: 203
- Push event: 966
- Gollum event: 23
- Pull request review event: 350
- Pull request review comment event: 213
- Pull request event: 235
Last Year
- Fork event: 1
- Create event: 161
- Commit comment event: 1
- Issues event: 45
- Release event: 7
- Watch event: 7
- Delete event: 142
- Issue comment event: 203
- Push event: 966
- Gollum event: 23
- Pull request review event: 350
- Pull request review comment event: 213
- Pull request event: 235
Committers
Last synced: 11 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Nicole Keeney | n****y@g****m | 852 |
| claalmve | c****9@b****u | 647 |
| Eric Lehmer | e****r@b****u | 436 |
| Victoria Ford | f****o@g****m | 270 |
| Ana Ordonez | a****z@e****m | 174 |
| neilSchroeder | n****r@g****m | 143 |
| naomi | t****g | 139 |
| Tianchi-Liu | l****c@b****u | 92 |
| Cora Kingdon | c****n@b****u | 89 |
| bethem | b****h@e****m | 58 |
| Brian Galey | b****y@g****m | 39 |
| Nabig Chaudhry | n****g@l****v | 33 |
| Owen Doherty | o****y@g****m | 22 |
| Will Krantz | k****w@g****m | 19 |
| neilSchroeder | n****r@g****m | 12 |
| Grace Di Cecco | 3****o | 12 |
| Calvin Chen | c****n@C****l | 9 |
| Brian Galey | b****y@b****u | 5 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 50
- Total pull requests: 571
- Average time to close issues: 3 months
- Average time to close pull requests: 8 days
- Total issue authors: 13
- Total pull request authors: 11
- Average comments per issue: 1.4
- Average comments per pull request: 1.09
- Merged pull requests: 429
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 30
- Pull requests: 314
- Average time to close issues: 17 days
- Average time to close pull requests: 7 days
- Issue authors: 11
- Pull request authors: 8
- Average comments per issue: 1.27
- Average comments per pull request: 0.88
- Merged pull requests: 223
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- elehmer (16)
- vicford (12)
- neilSchroeder (5)
- acordonez (3)
- zladwp (3)
- claalmve (3)
- nathancoliver (2)
- janluong (1)
- nicolejkeeney (1)
- mirachokshi (1)
- thenaomig (1)
- alwils916 (1)
- GondekNP (1)
Pull Request Authors
- claalmve (195)
- elehmer (147)
- nicolejkeeney (79)
- neilSchroeder (46)
- vicford (33)
- acordonez (29)
- Tianchi-Liu (26)
- thenaomig (7)
- wkrantz (6)
- gdicecco (2)
- corakingdon (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 102 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 5
- Total maintainers: 1
pypi.org: climakitae
Climate data analysis toolkit
- Homepage: https://github.com/cal-adapt/climakitae
- Documentation: https://climakitae.readthedocs.io/
- License: BSD 3-Clause License
-
Latest release: 1.3.0
published about 1 year ago
Rankings
Maintainers (1)
Dependencies
- actions/cache v2 composite
- actions/checkout v2 composite
- conda-incubator/setup-miniconda v2 composite
- psf/black stable composite
- Sphinx ==4.4.0
- sphinx-book-theme ==0.2.0
- sphinx-design *
- cartopy ==0.20.1
- dask-gateway ==0.9.0
- geopandas ==0.10.2
- geoviews ==1.9.2
- holoviews ==1.14.6
- hvplot ==0.7.3
- intake ==0.6.4
- intake-xarray ==0.5.0
- jinja2 ==3.0.2
- matplotlib ==3.4.3
- metpy ==1.1.0
- numpy ==1.21.2
- pandas ==1.3.4
- panel ==0.12.4
- param ==1.11.1
- psutil ==5.8.0
- pyproj ==3.2.1
- pytest ==7.1.3
- rioxarray ==0.7.1
- s3fs ==2021.10.1
- scipy ==1.7.1
- shapely ==1.7.1
- xarray ==0.19.0
- cartopy
- geopandas
- geoviews
- holoviews
- hvplot
- intake
- intake-esm
- intake-geopandas
- intake-xarray
- jinja2
- matplotlib
- metpy
- numpy
- pandas
- panel
- param
- pip
- proj
- psutil
- pygeos
- pyproj
- pytest
- python
- rioxarray
- s3fs
- scipy
- shapely
- xarray
- xmip