Skip to main content

Yet Another FITS Viewer

Project description

TeDa FITS Viewer

Observatory optimized FITS Images viewer

Key Features

  • Flexible windows and widgets layout
  • WCS support
  • Radial Profile with gaussoide fit (try r-key)
  • Scan mode: observes directory for changes and automatically opens new FITS
  • Integrated ipython console with direct access to data and application

Installation

The safest and recommended way to install TeDa is to use pipx:

   pipx install teda
   teda 

Consult pipx documentation for installation instructions.

Optional dependencies

To use ipython console the console extra should be specified. This extra installs ipython and qtconsole packages.

    pipx install teda[console]

For directory scanning functionality, the watchdog package should be installed, e.g.

    pipx install teda[watchdog]

Run

The installation scripts should install the command:

    teda

if it is not working, try:

    pipx ensurepath 

to add pipx-installed binaries to your path.

Command line parameters

    teda --help

for list of command line parameters.

Dynamic Scale and Color

The dynamic scale of the image, and color mapping can be adjusted form the Dynamic Scale panel. From menu: View/Dynamic Scale

Fits Header Cards Pinning

On the FITS Header panel, selected keys can be pinned to appear on the top ot the list. This can be done via context (right-click) menu.

The set of pinned keys is saved and preserved between sessions.

Radial Profile

The Radial Profile button turns on the mode of selecting targets for the radial profile analysis. Make sure the radial profile panel is visible (View/Radial Profile). The shortcut for displaying radial profile of the star under cursor is the R-key.

The centroid of the star is corrected within small (be precise!) radius using the bivariate gaussoide fit.

Together with the pixels values, the radial profile presents 1D fit of "gaussian(r) + sky". This fit provides information of presented fwhm and sky level.

Integrated Python Console

In order to use integrated python console the console extra dependency group have to be installed

The console is available form menu View/Python Console

Predefined variables

The console has a number of predefined variables set:

  • ax: WCSAxesSubplot main plotting axes.
  • window: MainWindow main window
  • data: numpy.ndarray current HDU data
  • header: astropy.fits.Header current HDU header
  • wcs: astropy.wcs.WCS the WCS transformer

Plotting

To plot directly on the console, run the following magic command %matplotlib inline.

When plotting on the main canvas, the result will appear after redrawing main figure by ax.figure.canvas.draw().

The example below, draws linear profile on the console and corresponding line on the main FITS display:

%matplotlib inline
import matplotlib.pyplot as plt
ax.plot([10,30], [10,10])
ax.figure.canvas.draw()
plt.plot(data[10,10:30])

Directory Scan

The Scan Toolbar (hidden by default) provides controls for the directory scanning mode.

This mode is intended to observe newly created FITS files in observatory.

After pressing Scan button, and choosing directory, TeDa Fits Viewer will load most recent FITS file from that directory, and keep watching the directory for changes. When new FITS file is added to directory, it will be loaded automatically.

User can pause scanning using Pause button. There is also auto pause feature, when active, any mouse movement in the main area pauses scanning for 5 seconds, avoiding FITS reload when working.

After un-pausing (manually or after idle 5 seconds when auto-pause) the newest FITS will be loaded if any new files appeared during the pause.

Directory scanning needs the watchdog extra dependency to be installed (see Installation above).

Directory Panel

The Directory Panel can be shown using menu command View-Directory view.

The Directory Panel is convenient files navigator. The panel has two views:

  • Directory Tree
  • Files List

User can collapse any of them using divider handle and use only remaining one. If the tree view is the only visible, it shows directories and files as well.

Development version install

TeDa uses poetry for development and packaging.

    git clone https://github.com/majkelx/teda.git
    cd teda
    poetry install

Bugs, remarks, greetings and contribution

Please use GitHub issues tracker and pull requests.

@2020-2023 AkondLab for the Araucaria Project.

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

teda-3.1.2.tar.gz (50.5 kB view details)

Uploaded Source

Built Distribution

teda-3.1.2-py3-none-any.whl (68.0 kB view details)

Uploaded Python 3

File details

Details for the file teda-3.1.2.tar.gz.

File metadata

  • Download URL: teda-3.1.2.tar.gz
  • Upload date:
  • Size: 50.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.0 Darwin/22.6.0

File hashes

Hashes for teda-3.1.2.tar.gz
Algorithm Hash digest
SHA256 12b4bf77f5043749bc85f0f935f231bfbba81a4a3d19641a6bdba3e9fe2b2825
MD5 0c8dff56caee0bd6e5a1fcd81c9ba7a2
BLAKE2b-256 6e1d8e1ec25fac957944194fdf322a13bab7902880d19c8dcf2d02266cb6c80c

See more details on using hashes here.

File details

Details for the file teda-3.1.2-py3-none-any.whl.

File metadata

  • Download URL: teda-3.1.2-py3-none-any.whl
  • Upload date:
  • Size: 68.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.0 Darwin/22.6.0

File hashes

Hashes for teda-3.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6a294e67304dc5f11fa86be85d231a1fd35ea75da388e6cc6d6b15f005621c78
MD5 cc8f7df3cd1248a49552f451400e1d01
BLAKE2b-256 b28eaa8c6849f2bfe91f2569c0a4d9c848459a0dc1c04f939fa3c5f64230e1b1

See more details on using hashes here.

Supported by

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