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)

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, or
  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.0a9.tar.gz (3.0 MB 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.0a9-py3-none-any.whl (1.6 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pyfv-0.0.0a9.tar.gz
Algorithm Hash digest
SHA256 ea135e1600aa3cd8a22b4fcad1e7ecd6eb2053ade963cd98cf0803a246355736
MD5 54e9386996504bfb529a283551975864
BLAKE2b-256 19413425db897ca6a86a8a766082c3cf00b3ef864b54b6e7db9ccc19a987e84b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyfv-0.0.0a9-py3-none-any.whl
  • Upload date:
  • Size: 1.6 MB
  • 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.0a9-py3-none-any.whl
Algorithm Hash digest
SHA256 5a67cbe6da1a7914c3213a10ba55ab791ff62575d2069c373678e1d8c564fa8a
MD5 b77dc54cce4c24ce0f7cfa9ab1c2333d
BLAKE2b-256 c96a6f17f4f1f0a4c4452340ab43dac482e483f0ff99ee67cfefc73df329662d

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