12. Appendix A METplus Components Python Packages
12.1. Overview
Note
The information below is a union of the Python package requirements across the following METplus components: METplus (including use cases), MET Python Embedding, METcalcpy, METplotpy, and METdataio. Many of the Python packages listed below are OPTIONAL and not required.
For information regarding the Python package requirements for each of the METplus components, see the documentation links below for the desired METplus component. Please note that the documentation for the METplus Use Cases lists the required Python packages in the individual Use Cases documentation.
12.2. METplus Components Python Packages
Python 3.10.4 +
- METplus Component:
- METplus wrappers,METcalcpy,METplotpy,METdataio
cartopy >=0.21.1
- METplus Component:
- Select METplus Use Cases,METcalcpy,METplotpy
- Source:
- Description:
Designed for geospatial data processing in order to produce maps and other geospatial data analyses
- Use Cases:
cfgrib
- METplus Component:
Select METplus Use Cases
- Source:
- Description:
Map GRIB files to the NetCDF Common Data Model following the CF Convention using ecCodes
- Use Cases:
Multi_Tool: Feature Relative by Lead using Multiple User-Defined Fields
cmocean
- METplus Component:
- METcalcpy,METplotpy
- Source:
- Description:
Contains colormaps for commonly-used oceanographic variables
dateutil >=2.8.2
- METplus Component:
METplus wrappers
- Source:
- Description:
Provides powerful extensions to the standard datetime module
- Use Cases:
Most
eofs
- METplus Component:
- Select METplus Use Cases,METcalcpy,METplotpy
- Source:
- Description:
Empirical orthogonal functions analysis of spatial-temporal data
- Use Cases:
h5py
- METplus Component:
Select METplus Use Cases
- Source:
- Description:
Pythonic interface to the HDF5 binary data format
- Use Case:
imutils >=0.5.4
- METplus Component:
METplotpy
- Source:
- Description:
A series of convenience functions to make basic image processing functions such as translation, rotation, resizing, skeletonization, displaying Matplotlib images, sorting contours, detecting edges, and much more easier
imageio
- METplus Component:
- METcalcpy,METplotpy
- Source:
- Description:
Provides an easy interface to read and write a wide range of image data, including animated images, volumetric data, and scientific formats
lxml >=4.9.1
- METplus Component:
- METcalcpy,METplotpy,METdataio
- Source:
- Description:
A Pythonic binding for the C libraries libxml2 and libxslt
matplotlib >=3.6.3
- METplus Component:
- Select METplus Use Cases,METcalcpy,METplotpy
- Source:
- Description:
A comprehensive library for creating static, animated, and interactive visualizations
- Use Case:
metcalcpy
- METplus Component:
- Select METplus Use Cases,METcalcpy,METplotpy
- Source:
- Description:
A Python version of the statistics calculation functionality of METviewer, METexpress, plotting packages in METplotpy and is a stand-alone package for any other application
- Use Case:
metplotpy
- METplus Component:
Select METplus Use Cases
- Source:
- Description:
Contains packages for plotting in METplus as stand-alone, or part of METplus use case, Select METplus Use Cases, METexpress, or METviewer
- Use Case:
metpy >=1.4.0
- METplus Component:
Select METplus Use Cases
- Source:
- Description:
A collection of tools in Python for reading, visualizing, and performing calculations with weather data
- Use Case:
Multi_Tool: Feature Relative by Lead using Multiple User-Defined Fields
nc-time-axis 1.4
- METplus Component:
METplotpystratosphere_diagnostics
- Source:
- Description:
Extension to cftime - **REQUIRES Python 3.7**
netCDF4 >=1.6.2
- METplus Component:
- Select METplus Use Cases,METcalcpy,METplotpy
- Source:
Description:
A Python interface to the netCDF C library
- Use Case:
For using MET Python embedding functionality in use cases
numpy >=1.24.2
- METplus Component:
- Select METplus Use Cases,METcalcpy,METplotpy,METdataio
- Source:
- Description:
NumPy offers comprehensive mathematical functions, random number generators, linear algebra routines, Fourier transforms, and more.
- Use Case:
For using MET Python embedding functionality in use cases
pandas >=1.5.2
- METplus Component:
- Select METplus Use Cases,METcalcpy,METplotpy,METdataio
- Source:
- Description:
A fast, powerful, flexible and easy to use open source data analysis and manipulation tool, built on top of the Python programming language
- Use Case:
For using MET Python embedding functionality in use cases
pint >=0.20.1
- METplus Component:
METcalcpy
- Source:
- Description:
Python package to define, operate and manipulate physical quantities
plotly >=5.13.0
- METplus Component:
- METcalcpy,METplotpy
- Source:
- Description:
Makes interactive, publication-quality graphs
pygrib
- METplus Component:
METplus wrappers
- Source:
- Description:
For reading/writing GRIB files
- Use Case:
pylab
- METplus Component:
Select METplus Use Cases
- Source:
- Description:
A convenience module that bulk imports matplotlib.pyplot (for plotting) and NumPy (for Mathematics and working with arrays) in a single name space
- Use Case:
pymysql >=1.0.2
- METplus Component:
- METcalcpy,METplotpy,METdataio
- Source:
- Description:
A pure-Python MySQL client library, based on PEP 249
pyproj >=2.3.1
- METplus Component:
Select METplus Use Cases
- Source:
- Description:
Python interface to PROJ (cartographic projections and coordinate transformations library)
- Use Case:
pyresample
- METplus Component:
Select METplus Use Cases
- METplus Component:
- Description:
For resampling geospatial image data
- Use Case:
pytest >=7.2.1
- METplus Component:
- METcalcpy,METplotpy,METdataio
- Source:
- Description:
A mature full-featured Python testing tool that helps to write better programs
python-kaleido >=0.2.1
- METplus Component:
- METcalcpy,METplotpy
- Source:
- Description:
Provides a low-level Python API that is designed to be used by high-level plotting libraries like Plotly
pyyaml >=6.0
- METplus Component:
- METcalcpy,METplotpy,METdataio
- Source:
- Description:
A full-featured YAML framework for the Python programming language
scikit-image >=0.19.3
- METplus Component:
- METcalcpy,METplotpy
- Source:
- Description:
A collection of algorithms for image processing
scikit-learn >=1.2.2
- METplus Component:
- Select METplus Use Cases,METcalcpy,METplotpy
- Source:
- Description:
Open Source library for Machine Learning in Python
- Use Case:
scipy >=1.9.3
- METplus Component:
- Select METplus Use Cases,METcalcpy,METplotpy
- Source:
- Description:
Wraps highly-optimized implementations written in low-level languages like Fortran, C, and C++
- Use Case:
sklearn
- METplus Component:
Select METplus Use Cases
- Source:
- Description:
Simple and efficient tools for predictive data analysis
- Description:
xarray >=2023.1.0
- METplus Component:
- Select METplus Use Cases,METcalcpy,METplotpy
- Source:
- Description:
Makes working with labelled multi-dimensional arrays simple, efficient, and fun
- Use Case:
For using MET Python embedding functionality in use cases
xesmf
- METplus Component:
Select METplus Use Cases
- Source:
NOTE: The xesmf package will not be installed on WCOSS2 and there is an open GitHub issue to replace the package in the use case that uses it: https://github.com/dtcenter/METplus/issues/1314
- Description:
For regridding
- Use Case:
yaml
- METplus Component:
- METcalcpy,METplotpy
- Source:
- Description:
To load, read, and write YAML files with PyYAML