Skip to main content

pyCallisto

What's New in Version 1.2.3

New Features

  • GOES X-ray Flux Overlay: New spectrogramWithGOES() function to overlay GOES satellite X-ray data on spectrograms
  • Enhanced Spectrogram Control: Added blevel (background level) and vmax (maximum value) parameters for better visualization control

Improvements

  • Added beautifulsoup4 and scipy to core dependencies for better out-of-the-box functionality
  • Optional dependencies for GOES integration
  • Improved Windows compatibility

pyCallisto is an image processing and data analysis Python library developed for e-CALLISTO data (http://www.e-callisto.org/). This library can be used to process data obtained using various solar radio spectrometers available around the globe.

Installation

Basic Installation

For core functionality (spectrogram visualization, time/frequency slicing, light curves):

pip install pyCallisto

Installation with GOES Support

For GOES X-ray flux overlay capabilities:

pip install pyCallisto[goes]

Full Installation

For all features:

pip install pyCallisto[all]

⚠️ Important for Windows Users:

  • Python 3.9-3.11 recommended for best compatibility
  • Python 3.12+: Some dependencies may fail to compile. Use the basic installation and install optional dependencies individually if needed
  • If you encounter compilation errors, consider using a conda environment or installing Visual Studio Build Tools

Alternative: Manual Dependency Installation

If you encounter issues with optional dependencies:

pip install pyCallisto
# Then install only what you need:
pip install sunpy  # For GOES features

Prerequisites and Dependencies

Core Dependencies (automatically installed)

  • Python 3.7 or higher
  • numpy
  • matplotlib
  • astropy
  • beautifulsoup4
  • scipy

Optional Dependencies (for GOES integration)

Install with pip install pyCallisto[goes]:

  • sunpy
  • drms
  • zeep
  • lxml
  • h5netcdf
  • h5py
  • cdflib
  • reproject
  • mpl-animators

Features

  • Spectrogram Visualization: Generate spectrograms from FITS files with customizable colormaps and parameters
  • Time and Frequency Slicing: Extract specific time ranges and frequency bands from observations
  • Light Curve Analysis: Create mean light curves by collapsing data along time axis
  • Spectrum Analysis: Generate frequency spectra for specific time instances
  • GOES Integration: Overlay GOES X-ray flux data on spectrograms for comprehensive solar event analysis
  • Background Subtraction: Automated background estimation and removal
  • Universal Plot: Combined visualization of spectrogram, light curve, and spectrum
  • File Concatenation: Merge multiple FITS files along time axis for extended observations

Troubleshooting

Module Not Found Error

If you get ModuleNotFoundError: No module named 'pyCallisto':

  1. Ensure you're using the correct Python environment
  2. Reinstall: pip uninstall pyCallisto && pip install pyCallisto

Import Errors for GOES Features

If you get import errors when using spectrogramWithGOES():

pip install pyCallisto[goes]

Compilation Errors on Windows (Python 3.12+)

  1. Use Python 3.9-3.11 instead, or
  2. Install basic version and skip optional dependencies:
    pip install pyCallisto
    

Visual Studio Build Tools Error

If you see "Microsoft Visual C++ 14.0 or greater is required":

  1. Download Build Tools for Visual Studio
  2. Install "Desktop development with C++"
  3. Retry installation

For more help, please open an issue on GitHub.

Quick Start

GOES Spectrogram Overlay

Overlay GOES X-ray flux data on your spectrogram:

import matplotlib.pyplot as plt

# After loading and processing your data use this function at the end

joined_bg_subtracted.spectrogramWithGOES(    #joined_bg_subtracted is just a variable name
    tstart="2024-07-16 13:05",
    tend="2024-07-16 14:34",
    satellite_number=16,    
    xtick=5,
    save_path='spectrogram_with_goes_overlay_2024-07-16.png'
)
plt.show()

Adjusting Spectrogram Parameters

Control dynamic range and background levels:

# Use blevel to adjust background level
# Use vmax to set maximum value for color scaling
obj.spectrogram(blevel=10, vmax=20) #Example

Contributors

Mr. Ravindra Pawase
Data Scientist
Cummins Inc.
Pune-411 004, India

Dr. K. Sasikumar Raja
Assistant Professor
Indian Institute of Astrophysics
II Block, Koramangala, Bengaluru-560 034, India

Mr. Mrutyunjaya Muduli
B.E. Computer Science and Engineering
Department of Computer Science and Engineering
HKBK College of Engineering
22/1, Opposite Manyata Tech Park, Nagavara, Bengaluru-560 045, India

Feedback

For feedback, queries, or feature requests, please contact:

Citation

If you find pyCallisto useful in your work, we appreciate acknowledgment. We recommend using the following citation:

"This work makes use of the pyCallisto library, which is available at https://github.com/ravipawase/pyCallisto"

Metadata

Release files for pyCallisto 1.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyCallisto 1.2.3
File Size Uploaded Provenance Actions
pycallisto-1.2.3.tar.gz 15.8 kB Without provenance Details for pycallisto-1.2.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for pyCallisto 1.2.3
File Interpreter ABI Platform Actions
pycallisto-1.2.3-py3-none-any.whl Python 3 none any Details for pycallisto-1.2.3-py3-none-any.whl

Total release size: 31.5 kB

Release files / pycallisto-1.2.3.tar.gz

Download URL pycallisto-1.2.3.tar.gz
Size 15.8 kB
Tags Source
SHA-256 checksum
How to use checksums
870adadc2add10ab16275f4c6337c6dce2fbda7672773734597212fcd497b37b
BLAKE2b-256 checksum
How to use checksums
4a6e1c7fcaa9a9d682db21a7f93750fb329475305136cc3517b3318e7ecef34f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release files / pycallisto-1.2.3-py3-none-any.whl

Download URL pycallisto-1.2.3-py3-none-any.whl
Size 15.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dc090be32836f0961c79dac4829db22d55ce0e73cc850cf1b0ac3b0eae23f25b
BLAKE2b-256 checksum
How to use checksums
ffacff5108093afb236edc09842cd1dfbde19ee839529073597161dc3ccc5119
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Security for pyCallisto 1.2.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page