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.0a4.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.0a4-py3-none-any.whl (263.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyfv-0.0.0a4.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.0a4.tar.gz
Algorithm Hash digest
SHA256 9fb4e4efc7eec0679ea6d3403d45f43e1c98c1ba654f014b1d34dc07d0d205f4
MD5 b192660592f916bbc3baec50ad76e686
BLAKE2b-256 add71ff056d322e4111c4d4bd66e55f7e526b37317446e696224608b3cccff18

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyfv-0.0.0a4-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.0a4-py3-none-any.whl
Algorithm Hash digest
SHA256 36d8b0ff5684c8db8699e21481d5ce4df436cc3dac2220077bb4957d257c4b28
MD5 347135383e39c8a5b1d8fa7fbdd43abb
BLAKE2b-256 52256f1436ca05fcc59afc780132de28850dcd274bbc3c3e51b67156c157eecd

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