Skip to main content

PyFV: modern Python port of FV for FITS image/table viewing and analysis

Project description

Binder

PyFV

PyFV is a modern, open-source rebirth of NASA’s classic FV (FITS Viewer.)

Rewritten in Python, PyFV provides astronomers, students, and enthusiasts with tools to explore and analyze FITS files in a clean, portable, and extensible way.

Legacy preserved. Future enabled. Open to all.


Features

  • FITS Support — Open and explore FITS images and tables
  • WCS Integration — Display world coordinate system (RA/Dec) when available
  • Plotting — Visualize columns, histograms, and image slices
  • Table Viewer — Inspect and filter FITS table HDUs
  • Scalings — Linear, logarithmic, sqrt, asinh, and more
  • Jupyter Support — Run PyFV Lite in the browser, no install required (via Binder/Colab, coming soon)

Demo

Here is a quick look at PyFV in action:

PyFV Demo


Quick Start

Local (Python)

Clone the repository and install dependencies:

   git clone https://github.com/panchai/PyFV.git
   cd PyFV
   pip install -r requirements.txt

(Option)

   pip install pyfv

Run the FITS viewer:

  python src/pyfv/fv.py data/sample.image.fits

In Jupyter (PyFV Lite)

  Notebook demos are available in the notebooks/ folder:

     jupyter notebook notebooks/PyFV-lite.ipynb

  Binder/Colab badges will be added soon for one-click browser runs.

     Examples
     FITS Image
     FITS Table

Documentation

Legacy FV help documentation is preserved in the doc/ folder (HTML format). This includes explanations of FITS formats, plotting, and usage examples.

History and Stewardship

The original FV (FITS Viewer) was developed at NASA in the late 1990s as part of the HEASARC mission tools suite. I have been its caretaker since 2001, ensuring it continued to serve astronomers, students, and researchers for more than two decades.

When my time at NASA came to a close, I am placing this Python-based FV, renamed as PyFV, on GitHub to preserve its legacy, ensure its survival, and open it to the future — even though there were efforts to quietly set it aside after it had already been demonstrated to succeed.

For the engineers and scientists who first created FV, PyFV is both a tribute to that history and a new beginning — lightweight, modern, and accessible to all.

License

This project is released under the BSD 3-Clause License. See the LICENSE file for details. © 2025 Pan S. Chai

Acknowledgments

  • The original FV (FITS Viewer) developed and maintained at NASA since the 1990s
  • The Astropy Project for core FITS and WCS functionality
  • The astronomy community for keeping open science alive

About the Author

Pan S. Chai is a software engineer and scientist with a long history at NASA, where he worked on mission-critical astronomical tools. PyFV is his effort to ensure that the beloved FV viewer continues to live on for future generations.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyfv-0.0.0a3.tar.gz (250.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyfv-0.0.0a3-py3-none-any.whl (263.7 kB view details)

Uploaded Python 3

File details

Details for the file pyfv-0.0.0a3.tar.gz.

File metadata

  • Download URL: pyfv-0.0.0a3.tar.gz
  • Upload date:
  • Size: 250.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.23

File hashes

Hashes for pyfv-0.0.0a3.tar.gz
Algorithm Hash digest
SHA256 26bd26f347624a8a56a1fa66f5a5bf2925fe1276c81ad79b2e86f4712e036243
MD5 2ec7087f42cb88a1efa89cf11c5ee6ec
BLAKE2b-256 5ae2c3b8b777f35517d46f186f9de843dc780be5702dbd95898788596a581cc2

See more details on using hashes here.

File details

Details for the file pyfv-0.0.0a3-py3-none-any.whl.

File metadata

  • Download URL: pyfv-0.0.0a3-py3-none-any.whl
  • Upload date:
  • Size: 263.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.23

File hashes

Hashes for pyfv-0.0.0a3-py3-none-any.whl
Algorithm Hash digest
SHA256 87186bab0b084f7e72fbacb4c41a81ad7556ea76ca06721a88fce25b57e6e02e
MD5 21a2ff51d27ccf277308195045b4391a
BLAKE2b-256 9f64d368649a42b76ab1a903bcf5c82ad8098d9570792175f1a743b98ed57e73

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page