• Stars
    star
    139
  • Rank 262,900 (Top 6 %)
  • Language
    Python
  • License
    BSD 3-Clause "New...
  • Created over 5 years ago
  • Updated 11 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

JWST astronomical data analysis tools in the Jupyter platform

Jdaviz logo

Zenodo DOI GitHub Actions CI Status Documentation Status Powered by Astropy

jdaviz is a package of astronomical data analysis visualization tools based on the Jupyter platform. It is one tool that is a part of STScI's larger Data Analysis Tools Ecosystem. These GUI-based tools link data visualization and interactive analysis. They are designed to work within a Jupyter notebook cell, as a standalone desktop application, or as embedded windows within a website -- all with nearly-identical user interfaces. jdaviz is under active development, and users who encounter bugs in existing features are encouraged to open issues in this repository.

jdaviz provides data viewers and analysis plugins that can be flexibly combined as desired to create interactive applications that fit your workflow. Three named preset configurations for common use cases are provided. Specviz is a tool for visualization and quick-look analysis of 1D astronomical spectra. Mosviz is a visualization tool for many astronomical spectra, typically the output of a multi-object spectrograph (e.g., JWST NIRSpec), and includes viewers for 1D and 2D spectra as well as contextual information like on-sky views of the spectrograph slit. Cubeviz provides a view of spectroscopic data cubes (like those to be produced by JWST MIRI), along with 1D spectra extracted from the cube. Imviz provides visualization and quick-look analysis for 2D astronomical images.

This tool is designed with instrument modes from the James Webb Space Telescope (JWST) in mind, but the tool should be flexible enough to read in data from many astronomical telescopes. The documentation provides a complete table of all supported modes.

Installing

You may want to consider installing jdaviz in a new virtual or conda environment to avoid version conflicts with other packages you may have installed, for example:

conda create -n jdaviz-env python=3.9
conda activate jdaviz-env

Installing the released version can be done using pip:

pip install jdaviz --upgrade

For details on installing and using Jdaviz, see the Jdaviz Installation.

Quick Start

Once installed, jdaviz can be run either as a standalone web application or in a Jupyter notebook.

As a Web Application

jdaviz provides a command-line tool to start the web application. To see the syntax and usage, from a terminal, type:

jdaviz --help
jdaviz --layout=specviz /path/to/data/spectral_file

For more information on the command line interfaces for each tool, see the Jdaviz docs.

In a Jupyter Notebook

The power of jdaviz is that it can integrated into your Jupyter notebook workflow:

from jdaviz import Specviz

specviz = Specviz()
specviz.show()

To learn more about the various jdaviz application configurations and loading data, see the Specviz, Cubeviz, Mosviz, Imviz, or Specviz2D tools.

jdaviz also provides a directory of sample notebooks to test the application, located in the notebooks sub-directory of the git repository. CubevizExample.ipynb is provided as an example that loads a JWST data cube with the Cubeviz configuration. To run the provided example, start the Jupyter kernel with the notebook path:

jupyter notebook /path/to/jdaviz/notebooks/CubevizExample.ipynb

Help

If you uncover any issues or bugs, you can open a GitHub issue if they are not already reported. For faster responses, however, we encourage you to submit a JWST Help Desk Ticket.

Recordings and instructional notebooks from live Jdaviz tutorials (as part of the JWebbinars series) can be found at the JWebbinar website under the "Materials and Videos" expandable section. Scroll down to the bottom of that section to find materials from the most recent session (JWebbinar 24, March 2023).

License & Attribution

This project is Copyright (c) JDADF Developers and licensed under the terms of the BSD 3-Clause license. This package is based upon the Astropy package template which is licensed under the BSD 3-clause licence. See the licenses folder for more information.

Cite jdaviz via our Zenodo record: https://doi.org/10.5281/zenodo.5513927.

Contributing

We love contributions! jdaviz is open source, built on open source, and we'd love to have you hang out in our community.

Imposter syndrome disclaimer: We want your help. No, really.

There may be a little voice inside your head that is telling you that you're not ready to be an open source contributor; that your skills aren't nearly good enough to contribute. What could you possibly offer a project like this one?

We assure you - the little voice in your head is wrong. If you can write code at all, you can contribute code to open source. Contributing to open source projects is a fantastic way to advance one's coding skills. Writing perfect code isn't the measure of a good developer (that would disqualify all of us!); it's trying to create something, making mistakes, and learning from those mistakes. That's how we all improve, and we are happy to help others learn.

Being an open source contributor doesn't just mean writing code, either. You can help out by writing documentation, tests, or even giving feedback about the project (and yes - that includes giving feedback about the contribution process). Some of these contributions may be the most valuable to the project as a whole, because you're coming to the project with fresh eyes, so you can see the errors and assumptions that seasoned contributors have glossed over.

Note: This disclaimer was originally written by Adrienne Lowe for a PyCon talk, and was adapted by jdaviz based on its use in the README file for the MetPy project.

More Repositories

1

jwst

Python library for science observations from the James Webb Space Telescope
Jupyter Notebook
564
star
2

notebooks

Content in this repository is not maintained and is actively being migrated to other repos.
Jupyter Notebook
217
star
3

poppy

Physical Optics Propagation in Python
Jupyter Notebook
215
star
4

webbpsf

James Webb Space Telescope PSF simulation tool
Jupyter Notebook
114
star
5

jdat_notebooks

JWST Data Analysis Tools Notebooks
Jupyter Notebook
108
star
6

imexam

imexam is a python tool for simple image examination, and plotting, with similar functionality to IRAF's imexamine
Python
74
star
7

astronify

Astronomical data sonification.
Python
73
star
8

jwql

The James Webb Space Telescope Quicklook Application
Python
64
star
9

jwebbinar_prep

Jupyter Notebook
57
star
10

style-guides

An opinionated guide on how we work.
Jupyter Notebook
55
star
11

spherical_geometry

A Python package for handling spherical polygons that represent arbitrary regions of the sky
Roff
55
star
12

drizzlepac

AstroDrizzle for HST images.
Python
50
star
13

drizzle

A package for combining dithered images into a single image
C
50
star
14

gwcs

Generalized World Coordinate System: provides tools for managing WCS in a general way
Python
46
star
15

specviz

An interactive astronomical 1D spectra analysis tool.
Python
43
star
16

mirage

This code can be used to generate simulated NIRCam, NIRISS, or FGS data
Python
39
star
17

synphot_refactor

Synthetic photometry using Astropy
Python
38
star
18

romancal

Python library to process science observations from the Nancy Grace Roman Space Telescope
Python
31
star
19

stenv

Python
27
star
20

PyFITS

Git repository for the PyFITS project; PyFITS is deprecated, use Astropy (https://github.com/astropy/astropy)
Python
27
star
21

tessworkshop_tutorials

Jupyter Notebook
24
star
22

scientific-python-training-2012

STSCI's Scientific Python Course 2012
Python
24
star
23

astrocut

Tools for making image cutouts from sets of TESS full frame images
Python
24
star
24

pysynphot

Synthetic Photometry.
Python
23
star
25

scientific-python-training-2015

STScI INS training
Python
22
star
26

jwst_mast_query

Command line tool for querying MAST and downloading JWST data products
Python
18
star
27

stak-notebooks

Notebooks for STAK project
Jupyter Notebook
17
star
28

cubeviz

Data analysis package for cubes. https://cubeviz.readthedocs.io/en/latest/
Python
15
star
29

romanisim

Nancy Grace Roman Space Telescope WFI Data Simulator
Python
15
star
30

z2jh-aws-ansible

Idempotent setup and teardown of Jupyterhub for AWS with k8s
15
star
31

jirahub

A package for syncing JIRA tickets and Github issues
Python
14
star
32

acs-notebook

Python Jupyter Notebooks that support users of the ACS instrument on board the Hubble Space Telescope
Jupyter Notebook
14
star
33

roman_tools

Instructions and tutorials for Roman software tools distributed by STScI for the science community
Jupyter Notebook
14
star
34

tinytim

[UNMAINTAINED] Point spread function modeling tool
C
14
star
35

astroimtools

Astronomical Image Convenience Tools
Python
14
star
36

WFC3Library

IPython Notebooks for HST WFC3 data calibration and analysis
HTML
13
star
37

pysiaf

Handling of Science Instrument Aperture Files (SIAF) for space telescopes
Python
13
star
38

stsynphot_refactor

Synthetic photometry using Astropy for HST and JWST
Python
13
star
39

JWSTUserTraining2016

User Training in JWST Data Analysis II
Jupyter Notebook
13
star
40

STScI-STIPS

STScI-STIPS
Python
13
star
41

crds

Calibration Reference Data System for HST and JWST.
Python
12
star
42

calcloud

Python
12
star
43

wss_tools

Python tools for JWST Wavefront Sensing Software
Python
11
star
44

hellouniverse

Jupyter Notebook
11
star
45

wfc3_photometry

Jupyter Notebook
11
star
46

tweakwcs

Algorithms for matching and aligning catalogs and for tweaking the WCS so as to minimize catalog mismatch errors
Python
11
star
47

hstcal

Calibration for HST/WFC3, HST/ACS, and HST/STIS
C
11
star
48

jwst_gtvt

Python
10
star
49

stcal

Python
10
star
50

hst_notebooks

Generated Notebooks HTML
Jupyter Notebook
10
star
51

hstaxe

hstaxe is the python and C follow on to the aXe package which was maintained in IRAF for many years.
HTML
10
star
52

psfutils

PSF Utilities
Python
9
star
53

subpixal

Subpixel cross-correlation image alignment of astronomical images
Python
9
star
54

aas229_workshop

Using Python for Astronomical Data Analysis in the Era of JWST (Winter AAS 2017)
Jupyter Notebook
9
star
55

gaia_alignment

Jupyter Notebook
9
star
56

tike_content

High level walk-through, notebooks and features of the STScI Time series Integrated Knowledge Engine.
Jupyter Notebook
9
star
57

PASTIS

Algorithm for analytical contrast predictions of coronagraphs on segmented telescopes
Jupyter Notebook
8
star
58

ins-jwst-community-software

Standards for JWST community tools developed and maintained by the Instruments Division
8
star
59

DRESSCode

DRESSCode (Data Reduction of Extended SWIFT Sources Code)
Python
8
star
60

dat_pyinthesky

Notebooks for "notebook-driven development" for the Data Analysis Tools efforts
Jupyter Notebook
8
star
61

jwst_coronagraph_visibility

Visualize approximate pointing constraints for JWST coronagraphs.
Python
8
star
62

STIS-Notebooks

Jupyter Notebooks for HST STIS observation planning and data analysis
HTML
7
star
63

jwst_backgrounds

This tool retrieves background intensity spectra relevant for JWST
Python
7
star
64

aas239-jwebbinar

Jupyter Notebook
7
star
65

roman_datamodels

Datamodel support for the roman calibration pipeline
Python
7
star
66

stsci.tools

STScI utility functions.
Python
7
star
67

cosmo

System for monitoring HST COS
Python
7
star
68

pandeia-tutorials

Pandeia coding resources
Jupyter Notebook
7
star
69

acsql

The Advanced Camera for Surveys Quicklook Project
TeX
6
star
70

wfc3tools

Python tools for HST WFC3 data calibration and analysis
Python
6
star
71

roman-data-workshop

Jupyter Notebook
6
star
72

spacekit

Python package for astronomical machine learning and data science
Python
6
star
73

mast_notebooks

A curated collection of Jupyter Notebooks, brought to you by the team at MAST.
Jupyter Notebook
6
star
74

exovetter

Exoplanet vetting
Jupyter Notebook
6
star
75

sprint_notebooks

Notebooks from JWST DADF Sprints
Jupyter Notebook
6
star
76

specview

Archived, see https://github.com/spacetelescope/specviz for future development. Spectrum visualization, manipulation, and fitting
Python
6
star
77

pylunch

Jupyter Notebook
6
star
78

PandExo_HST

A community tool for transiting exoplanet science with JWST & HST
HTML
6
star
79

stginga

Ginga products specific to STScI data analysis.
Python
6
star
80

roman_notebooks

Jupyter Notebook
6
star
81

pandeia-coronagraphy

Toolkit for adding advanced coronagraph simulations on top of the Pandeia engine
Jupyter Notebook
5
star
82

mosviz

MOS Visualization Tool
Python
5
star
83

soc_roman_tools

Tools for the Nancy Grace Roman Space Telescope / Wide Field Instrument (WFI) Imaging Mode
Python
5
star
84

stdatamodels

Python
5
star
85

jwst_validation_notebooks

JWST Pipeline Validation Notebooks
Jupyter Notebook
5
star
86

rad

Nancy Grace Roman Space Telescope shared attributes for processing and archive
Python
5
star
87

AAS2016

Tutorial materials for the 2016 AAS Meeting
Jupyter Notebook
5
star
88

stistools

Tools for HST/STIS.
Python
5
star
89

acstools

Tools for HST/ACS
Python
5
star
90

lcviz

light curve visualization and analysis tool
Python
5
star
91

roman-technical-information

Python
5
star
92

pypolyclip

Clip polygons against a pixel grid
Python
4
star
93

fitscut

C
4
star
94

science-platform-images

Shell
4
star
95

yaml-schema-standard

Documentation and metaschema for YAML Schema draft.
Python
4
star
96

jwst-apt-tools

Python tools for APT for JWST
Python
4
star
97

stwcs

WCS based distortion models and coordinate transformation.
Python
4
star
98

catkit

Hardware control interfaces for optics lab instrumentation development and experiments.
Python
4
star
99

jenkins_shared_ci_utils

Groovy
4
star
100

jwst_visit_viewer

JWST visit file visualization tool. This is mostly useful for observatory commissioning support, not intended as a general user tool.
Python
4
star