Welcome to PyOphidia documentation!
PyOphidia is a GPLv3-licensed Python package for interacting with the Ophidia Framework.
It aims at providing a user-friendly and programmatic interface for large-scale data analytics and a convenient way to submit SOAP HTTPS requests to an Ophidia server or to develop your own application using Python.
PyOphidia provides features for handling scientific data in the form of datacubes, managing workflow execution, enabling parallel processing on HPC/Cloud systems and supporting integration with well-known modules from the Python scientific ecosystem.
It runs on Python 2.7, 3.7, 3.8, 3.9, 3.10 and 3.11 it is pure-Python code and has some (optional) dependencies on Xarray, Pandas and Numpy. It requires a running Ophidia instance for client-server interactions. The latest PyOphidia version (v1.12) is compatible with Ophidia v1.8.
It provides 2 main classes:
Client class (client.py): generic low level class for the submissions of Ophidia commands and workflows as well as the management of sessions from Python code, using SSL and SOAP with the client ophsubmit.py
Cube class (cube.py): high level class and providing the datacube type abstraction and the methods to manipulate, process and get information on cubes objects
While the cube module provides a user-friendly interface, the client module allows a finer specification of the operators.
Check out the Usage section for further information, including how to Install with pip the project.
Note
This project is under active development.
Contents
- Installation
- Usage
- Import PyOphidia
- Instantiate a Client
- Client attributes
- Client methods
- Submit a request
- Set a Client for the Cube class
- Cube attributes
- Create a new container
- Import a new cube
- Create a Cube object with an existing cube identifier
- Show the structure and info of a Cube
- Subset a Cube
- Explore a Cube
- Export a cube to NetCDF file
- Export to a Python array
- Export a datacube to a Xarray dataset
- Export a datacube to a Pandas dataframe
- Run a Python script with Ophidia
- Examples
- Tutorial