Skip to content

Latest commit

 

History

History
2767 lines (1748 loc) · 76 KB

CHANGES.rst

File metadata and controls

2767 lines (1748 loc) · 76 KB

4.2 (unreleased)

New Features

Cubeviz

Imviz

Mosviz

Specviz

Specviz2d

API Changes

Cubeviz

Imviz

Mosviz

Specviz

Specviz2d

Bug Fixes

Cubeviz

Imviz

Mosviz

Specviz

Specviz2d

Other Changes and Additions

4.1.1 (unreleased)

Bug Fixes

Cubeviz

Imviz

Mosviz

Specviz

Specviz2d

4.1 (2024-12-23)

New Features

  • New design for viewer legend and future data-menu. [#3220, #3254, #3263, #3264, #3271, #3272, #3274, #3289, #3310, #3370]
  • Improve performance while importing multiple regions. [#3321]
  • API method to toggle API hints. [#3336]
  • Changing flux/SB display units no longer resets viewer zoom levels. [#3335]

Cubeviz

  • Add Sonify Data plugin which uses the Strauss package to turn a data cube into sound. [#3269]

Imviz

  • Orientation plugin API now exposes create_north_up_east_left and create_north_up_east_right methods. [#3308]
  • Add Roman WFI and CGI footprints to the Footprints plugin. [#3322, #3345]
  • Catalog Search plugin now exposes a maximum sources limit for all catalogs and resolves an edge case when loading a catalog from a file that only contains one source. [#3337]
  • Catalog Search plugin zoom_to_selected is now in the public API. The default zoom level changed from a fixed 50 pixels to a zoom window that is a fraction of the image size (default 2%) to address and issue with zooming when using a small image or WCS linked. [#3369]

Specviz

  • Specviz parser will now split a spectrum with a 2D flux array into multiple spectra on load (useful for certain SDSS file types). [#3229]

API Changes

  • Removed API access to plugins that have passed the deprecation period: Links Control, Canvas Rotation, Export Plot. [#3270]
  • Subset Tools plugin now exposes the subset, combination_mode, recenter_dataset, recenter, get_center, and set_center in the user API. [#3293, #3304, #3325]
  • Metadata plugin: metadata_plugin.metadata API has been deprecated; use metadata_plugin.meta instead, which will return a Python dictionary instead of list of tuples. [#3292]
  • Add get_regions method to subset plugin to retrieve spatial/spectral subsets as regions or SpectralRegions, deprecate get_interactive_regions and get_spectral_regions. [#3340]

Bug Fixes

  • Fixed broken flux unit conversions in all plugins that respond to changes in flux unit changes. These cases occured when certain flux-to flux-conversions occured, as well as certain conversions between flux and surface brightness. This PR also fixed an issue with unit string formatting in the aperture photometry plugin. [#3228]
  • Fixed broken histogram pan/zoom in Plot Options plugin. [#3361]
  • Fixed bug with Plot Options select_all when data is float32. [#3366]
  • Fixed an issue with back-to-back calls of set_limits and get_limits. [#3371]

Cubeviz

  • Removed the deprecated save as fits option from the Collapse, Moment Maps, and Spectral Extraction plugins; use the Export plugin instead. [#3256]
  • Fixed bugs where cube model fitting could fail if Jdaviz custom equivalencies were required. [#3343]

Other Changes and Additions

  • Added a short description of each plugin in the side menu, visible before the plugin is opened. Removes redundant descriptions above link out to documentation when plugin is opened. Enable search on plugin description in addition to title. [#3268]
  • Improved performance of app.get_subsets for the single-subset case. [#3363]

4.0.1 (2024-12-16)

Bug Fixes

  • Improved performance and removed jittering for the matched box zoom tool. [#3215]
  • Fixed Aperture Photometry radial profile fit crashing when NaN is present in aperture data for Cubeviz and Imviz. [#3246]
  • Prevent PluginMarks from converting y-range so they maintain their position in the spectrum-viewer when spectral y units are converted. [#3242]
  • Added nbclassic dependency to fix solara-based popouts. [#3282]
  • Fixed viewer widgets displaying improperly if initialized out of view in Jupyter Lab. [#3299]
  • Fixed width of sliders in plugins to use full-width of plugin. [#3303]
  • Raise an error when attempting to open in a popout or sidecar when not supported (i.e. within VSCode). [#3309]

Cubeviz

  • Add missing styling to API hints entry for aperture_method in the spectral extraction plugin. [#3231]
  • Fixed "spectrum at spaxel" tool so it no longer resets spectral axis zoom. [#3249]
  • Fixed initializing a Gaussian1D model component when Cube Fit is toggled on. [#3295]
  • Spectral extraction now correctly respects the loaded mask cube. [#3319, #3358]

Imviz

  • Remove "From File.." option when running on an external server. [#3239]
  • Button in the footprints plugin to change the link-type now redirects to the orientation plugin when the change fails due to the presence of subsets or markers. [#3276]
  • Updates UI language in the orientation plugin to better match API. [#3276]
  • Update Roman L2 example files in example notebook. [#3346]

Mosviz

Specviz

Specviz2d

4.0 (2024-10-17)

New Features

  • Added ability to load remote data from a URI or URL. [#2875, #2923]
  • Added flux/surface brightness translation and surface brightness unit conversion in Cubeviz and Specviz. [#2781, #2940, #3088, #3111, #3113, #3129, #3139, #3149, #3155, #3178, #3185, #3187, #3190, #3156, #3200, #3192, #3206, #3211, #3216, #3219]
  • Plugin tray is now open by default. [#2892]
  • New "About" plugin to show Jdaviz version info. [#2886]
  • Descriptions are shown in the color mode dropdown for image layers to help describe the use-cases for Colormap vs Color. [#2894]
  • The colormap menu for image layers now shows in-line previews of the colormaps. [#2900]
  • Plugins can now expose in-UI API hints. [#3137, #3159]
  • The standalone version of jdaviz now uses solara instead of voila, resulting in faster load times. [#2909]
  • New configuration for ramp/Level 1 and rate image/Level 2 data products from Roman WFI and JWST [#3120, #3148, #3167, #3171, #3194]
  • Unit columns are now visible by default in the results table in model fitting. [#3196]

Cubeviz

  • Automatic spectral extraction now goes through the logic of the spectral extraction plugin for self-consistency. This results in several breaking changes to data-labels and get_data (the extracted spectra are now given dedicated data-labels instead of referring to them by the label of the flux cube) as well as to several plugins: model fitting, gaussian smooth, line analysis, and moment maps. [#2827]
  • Background subtraction support within Spectral Extraction. [#2859]
  • Aperture photometry plugin now listens to changes in display unit. [#3118]

Imviz

  • Added a table with catalog search results. [#2915, #3101, #3099]
  • "Imviz Line Profiles (XY)" plugin is renamed to "Image Profiles (XY)". [#3121]
  • Added Gaia catalog to Catalog plugin. [#3090]
  • Updated link_type to align_by and wcs_use_affine to wcs_fast_approximation in Orientation plugin API to better match UI text. [#3128]

Specviz

  • Fixed viz.app.get_subsets() for XOR mode. [#3124]

Specviz2d

  • Add option to use self-derived spatial profile for Horne extract in spectral extraction plugin. [#2845]

API Changes

  • The Monochromatic option for color_mode in plot options is now renamed to Color. Monochromatic will continue to work with a deprecation warning, but may be removed in a future release. [#2894]
  • Plugin Table components now support row selection. [#2856]

Cubeviz

  • get_data no longer supports function or spatial_subset as arguments. To access an extracted 1D spectrum, use the Spectral Extraction plugin or the automatic extraction of spatial subsets, and refer to the data-label assigned to the resulting 1D spectrum. [#2827]
  • Several plugins that take 1D spectra replace spatial_subset with referring to the 1D spectrum in dataset. This affects: model fitting, gaussian smooth, line analysis, and moment maps. [#2827]
  • Removed deprecated cubeviz.select_slice() method. Use cubeviz.select_wavelength() instead. [#2878]
  • In the Slice plugin, the following deprecated properties were removed: wavelength (use value), wavelength_unit (use value_unit), show_wavelength (use show_value), slice (use value). [#2878]
  • Spectral Extraction: renamed collapse_to_spectrum(...) to extract(...). [#2859]
  • Generic FITS parsing now goes through specutils loaders first, if possible. If a specutils loader is used, uncertainty is converted to standard deviation type. [#3119]
  • Custom Spectrum1D writer format jdaviz-cube is removed. Use wcs1d-fits from specutils instead. [#2094]
  • Aperture Photometry plugin now uses TRFLSQFitter to fit radial profile because LevMarLSQFitter is no longer recommended by Astropy. [#3202]

Imviz

  • Deprecated Rotate Canvas plugin was removed; use Orientation plugin instead. [#2878]
  • Aperture Photometry plugin now uses TRFLSQFitter to fit radial profile because LevMarLSQFitter is no longer recommended by Astropy. [#3202]

Specviz

  • In the Line Analysis plugin, deprecated width was removed (use continuum_width). [#2878]

Bug Fixes

  • Markers table can now export to CSV but its columns had to be changed to accomodate this fix: world and pixel (previously containing SkyCoord and pixel location tuples, respectively) are now each two separate columns for world_ra/world_dec and pixel_x/pixel_y, respectively. [#3089]
  • Stretch histogram in zoom limits no longer attempts unnecessary updates when zoom limits are changed. [#3151]
  • Aperture Photometry plugin no longer allows negative counts conversion factor. [#3154]
  • Fixed multiple select handling for batch mode aperture photometry in Cubeviz. [#3163]

Cubeviz

  • Moment map plugin now reflects selected flux / surface brightness unit for moment zero. [#2877]
  • Update the scale factor used to convert a spectrum between surface brightness and flux to use wavelength-dependent aperture area instead of the cone slice scale factor. [#2860]
  • Handle display units when doing flux / surface brightness conversions. [#2910]
  • Flux units are now correct for collapsed spectra when using the sum function when units are in per steradian. [#2873]
  • Mouse over coordinates now responds to the selected surface brightness unit. [#2931]
  • Fixed MaNGA cube loading. Uncertainty type is also handled properly now. [#3119]
  • Fixed spectral axis value display in Markers plugin. Previously, it failed to display very small values, resulting in zeroes. [#3119]
  • No longer incorrectly swap RA and Dec axes when loading Spectrum1D objects. [#3133]
  • Fixed fitting a model to the entire cube when NaNs are present. [#3191]

Specviz2d

  • Fixed Subset unit when it is created in 2D spectrum viewer. [#3201]
  • Fix matched mouseover marker for 1d spectrum viewer when mouse is over 2d spectrum viewer. [#3203]

Other Changes and Additions

  • Bump required specutils version to 1.16. Moment 0 calculation is now in units of flux*dx (rather than flux) [#3184]

3.10.4 (2024-10-29)

Bug Fixes

  • Stretch histogram in zoom limits no longer attempts unnecessary updates when zoom limits are changed. [#3151]

Imviz

  • Remove "From File.." option when running on an external server. [#3239]

Specviz2d

  • Fix matched mouseover marker for 1d spectrum viewer when mouse is over 2d spectrum viewer. [#3203]

3.10.3 (2024-07-22)

Bug Fixes

  • Display default filepath in Export plugin, re-enable API exporting, enable relative and absolute path exports from the UI. [#2896]
  • Fixes exporting the stretch histogram from Plot Options before the Plot Options plugin is ever opened. [#2934]
  • Previous zoom tool is optimized to only issue one zoom update to the viewer. [#2949]
  • Fixes overwrite behavior for plugin plots, and properly closes overwrite warning overlay after confirmation. [#3094]
  • Disable all non-image exporting when the server is not running locally, to avoid confusion with the file being saved on the server. [#3096]

Cubeviz

  • Fixed a bug with filename handling for movie exports. [#2942]

Imviz

  • Fix multiple footprints bug that prevented footprint updates on changes to the viewer orientation. [#2918]
  • Exclude subset layers from the orientation options in the Orientation plugin. [#3097]

Mosviz

Specviz

Specviz2d

3.10.2 (2024-06-06)

Bug Fixes

  • Update button in the subset plugin is now disabled when no subset is selected. [#2880]

3.10.1 (2024-05-14)

Bug Fixes

Cubeviz

  • Fix Data Quality plugin bug that attempted to apply array compositing logic to spatial subsets. [#2854]

Imviz

Mosviz

Specviz

Specviz2d

  • Prevent laggy behavior in trace previews for spectral extraction. [#2862]

3.10 (2024-05-03)

New Features

  • The filename entry in the export plugin is now automatically populated based on the selection. [#2824]
  • Adding Data Quality plugin for Imviz and Cubeviz. [#2767, #2817, #2844]
  • Enable exporting spectral regions to ECSV files readable by astropy.table.QTable or specutils.SpectralRegion [#2843]

Cubeviz

  • Enable spectral unit conversion in cubeviz. [#2758, #2803]
  • Enable spectral extraction for composite subsets. [#2837]

API Changes

Cubeviz

  • ERROR and DATA_QUALITY extension names are now recognized as uncertainty and mask, respectively. [#2840]

Bug Fixes

Cubeviz

  • Re-enable support for exporting spectrum-viewer. [#2825]

Specviz2d

  • Loading a specific extension with ext keyword no longer crashes. [#2830]

Other Changes and Additions

  • Bump required Python version to 3.10. [#2757]
  • Line menu in Redshift from Centroid section of Line Analysis now shows values in current units. [#2816, #2831]
  • Bump required specutils version to 1.15. [#2843]

3.9.1 (2024-04-19)

  • Fix mouseover display's top-layer logic to account for the visibility and contour toggles in the plot options plugin. [#2818]

Bug Fixes

  • Fix dropdown selection for table format in export plugin. [#2793]
  • Standalone mode: stop jdaviz/voila processes when closing app. [#2791]
  • Fixes compatibility with glue >= 1.19. [#2820]

Cubeviz

  • Spectral extraction errors will show in snackbar. [#2807]

Imviz

  • Fix bugs where API created footprints did not overlay and only last footprint displayed if added before linking. [#2790, #2797]
  • Improved behavior when orientations are created or selected without having data loaded in the viewer. [#2789]
  • Fixed a bug in the Orientation plugin where a WCS orientation could sometimes be flipped. [#2802]

Specviz

  • H-Paschen-Brackett HI 5-4 line's rest wavelength is now correct. It was previously off by 0.5 micron. [#2819]

3.9 (2024-04-05)

New Features

  • Stretch bounds tool now enables dynamic adjustment of spline knots. [#2545, #2623]
  • Stretch histogram shows a spinner when the histogram data is updating. [#2644]
  • Spectrum and image viewer bounds can now be set through the Plot Options UI. [#2604, #2649]
  • Opacity for spatial subsets is now adjustable from within Plot Options. [#2663]
  • Live-preview of aperture selection in plugins. [#2664, #2684]
  • "Export Plot" plugin is now replaced with the more general "Export" plugin. [#2722, #2782]
  • "Export" plugin supports exporting plugin tables, plugin plots, data, and non-composite spatial subsets.[#2755, #2774, #2760, #2772, #2770, #2780, #2784]
  • Opening a plugin in the tray (from the API or the toolbar buttons) now scrolls to that plugin. [#2768]

Cubeviz

  • Calculated moments can now be output in velocity units. [#2584, #2588, #2665, #2697]
  • Added functionality to Collapse and Spectral Extraction plugins to save results to FITS file. [#2586]
  • Moment map plugin now supports linear per-spaxel continuum subtraction. [#2587]
  • Single-pixel subset tool now shows spectrum-at-spaxel on hover. [#2647]
  • Spectral extraction plugin re-organized into subsections to be more consistent with specviz2d. [#2676]
  • Add conical aperture support to cubeviz in the spectral extraction plugin. [#2679]
  • New aperture photometry plugin that can perform aperture photometry on selected cube slice. [#2666]
  • Live previews in spectral extraction plugin. [#2733]
  • Slice plugin is refactored to rely on the spectral value instead of the slice index. This removes both the slider and slice-index input. [#2715]

Imviz

  • There is now option for image rotation in Orientation (was Links Control) plugin. This feature requires WCS linking. [#2179, #2673, #2699, #2734, #2759]
  • Add "Random" colormap for visualizing image segmentation maps. [#2671]
  • Enabling any matched zoom tool in a viewer disables other matched zoom tools in other viewers to avoid recursion. [#2764]

Specviz2d

  • Spectral extraction plugin: highlighting of active header section. [#2676]

API Changes

  • width argument in Line Analysis plugin is renamed to continuum_width and width will be removed in a future release. [#2587]
  • New API access to viz.data_labels, viewer.data_labels_visible, and viewer.data_labels_loaded. [#2626]

Cubeviz

  • spatial_subset in the spectral extraction plugin is now renamed to aperture and the deprecated name will be removed in a future release. [#2664]
  • Slice plugin's wavelength, wavelength_unit, and show_wavelength are deprecated in favor of value, value_unit, and show_value, respectively. slice is also deprecated and should be replaced with accessing/setting value directly. [#2706, #2715]
  • Disabled exporting spectrum-viewer to PNG in Cubeviz; pending investigation/bugfix. [#2777]

Imviz

  • Links Control plugin is now called Orientation. [#2179]
  • Linking by WCS will now always generate a hidden reference data layer without distortion. As a result, when WCS linked, the first loaded data is no longer the reference data. Additionally, if data is distorted, its distortion will show when linked by WCS. If there is also data without WCS, it can no longer be displayed when WCS linked. [#2179]
  • imviz.link_data() inputs and behaviors are now consistent with the Orientation plugin. [#2179]
  • Single-pixel tool is no longer available. To mark a single-pixel area, use Markers plugin. [#2710]

Bug Fixes

  • Fix redshifted line lists that were displaying at rest wavelengths, by assuming a global redshift. [#2726]
  • Order of RGB preset colors now matches for less than and greater than 5 layers. [#2731]

Cubeviz

  • Spectral extraction now ignores NaNs. [#2737]

Imviz

  • Apertures that are selected and later modified to be invalid properly show a warning. [#2684]
  • Histogram in Plot Options no longer stalls for a very large image. [#2735]

Specviz

  • Check unit type (e.g., flux density, surface brightness, counts, etc) for generating display label for the y axis in spectral viewer. Previously it was hard coded to always display flux density no matter the input unit. [#2703]

3.8.2 (2024-02-23)

Bug Fixes

  • Fix app top-bar alignment in popouts and when embedded in websites. [#2648]
  • Viewer data-menu is no-longer synced between different instances of the app to avoid recursion between click events. [#2670]
  • Fix data-menu cutoff in smaller viewers, ensuring full visibility regardless of viewer dimensions. [#2630, #2707]

Cubeviz

  • Fixes Spectral Extraction's assumptions of one data per viewer, and flux data only in flux-viewer/uncertainty data only in uncert-viewer. [#2646]
  • Fixed a bug where cube model fitting could fail (endless spinner) if input cube has invalid 3D WCS. [#2685]

3.8.1 (2023-12-21)

Bug Fixes

  • Compatibility with glue-core 1.17. [#2591, #2595]
  • Fix image layer visibility toggle in plot options. [#2595]
  • Fixes viewer toolbar items losing ability to bring up right-click menu. [#2605]

Cubeviz

  • Fixes ability to remove cube data from the app. [#2608]
  • Fixes [SCI] data not showing in the spectrum viewer's data menu. [#2631]

Imviz

  • Line Profile (XY) plugin no longer malfunctions when image contains NaN values. [#2594]
  • Stretch histogram now represents mixed state for any of the inputs (when multiple viewers are selected) with an overlay appropriately. [#2606]
  • Fixes viewer keys in viz.viewers for additionally created viewers. [#2624]

Mosviz

Specviz

  • Fixed parser bug where an HDUList would load as SpectrumList, even though it was a Spectrum1D. [#2576]

Specviz2d

3.8 (2023-11-29)

New Features

  • Plots in plugins now include basic zoom/pan tools for Plot Options, Imviz Line Profiles, and Imviz's aperture photometry. [#2498]
  • Histogram plot in Plot Options now includes tool to set stretch vmin and vmax. [#2513, #2556]
  • The Plot Options plugin now include a 'spline' stretch feature. [#2525]
  • User can now remove data from the app completely after removing it from viewers. [#2409, #2531]
  • Colorbar now shown on top of the histogram in Plot Options for image viewers. [#2517]
  • Reorder viewer and layer settings in Plot Options. [#2543, #2557]
  • Add button in Plot Options to apply preset RBG options to visible layers when in Monochromatic mode. [#2558, #2568]
  • Plugin "action" buttons disable and show icon indicating that an action is in progress. [#2560, #2571]
  • Plugin APIs now include a close_in_tray() method. [#2562]
  • Convert the layer select dropdown in Plot Options into a horizontal panel of buttons. [#2566, #2574, #2582]

Cubeviz

  • Add circular annulus subset to toolbar. [#2438]
  • Expose sky regions in get_subsets. If 'include_sky_region' is True, a sky Region will be returned (in addition to a pixel Region) for spatial subsets with parent data that was a WCS. [#2496]

Imviz

  • Aperture photometry (previously "Imviz Simple Aperture Photometry") now supports batch mode. [#2465]
  • Aperture photometry sum is now presented in scientific notation consistently. [#2530]
  • Expose sky regions in get_subsets. If 'include_sky_region' is True, a sky Region will be returned (in addition to a pixel Region) for spatial subsets with parent data that was a WCS. [#2496]

Mosviz

  • Matched mouseover indicator to show same position in 1d and 2d spectral viewers. [#2575]

Specviz2d

  • Matched mouseover indicator to show same position in 1d and 2d spectral viewers. [#2575]

API Changes

  • Deprecated app.get_data_from_viewer is removed, use viz_helper.get_data instead. [#2578]
  • Deprecated app.get_subsets_from_viewer is removed, use viz_helper.get_subsets instead. [#2578]
  • User APIs now raise a warning when attempting to set a non-existing attribute to avoid confusion caused by typos, etc. [#2577]
  • Viewer API now exposed via viz.viewers dictionary, currently containing APIs to set axes limits as well as astrowidgets API commands for Imviz. [#2563]

Imviz

  • Deprecated do_link argument of imviz.load_data is removed, use batch_load context manager instead. [#2578]

Specviz

  • Deprecated specviz.load_spectrum is removed, use specviz.load_data instead. [#2578]

Bug Fixes

  • Fix Plot Options stretch histogram's curve for non-gray colormaps. [#2537]

Imviz

  • Plot options layer selection no longer gets stuck in some cases when deleting the currently selected viewer. [#2541]

Other Changes and Additions

  • Better handling of non-finite uncertainties in model fitting. The 'filter_non_finite' flag (for the LevMarLSQFitter) now filters datapoints with non-finite weights. In Specviz, if a fully-finite spectrum with non-finite uncertainties is loaded, the uncertainties will be dropped so every datapoint isn't filtered. For other scenarios with non-finite uncertainties, there are appropriate warning messages displayed to alert users that data points are being filtered because of non-finite uncertainties (when flux is finite). [#2437]
  • Add swatches to color picker. [#2494]
  • Plot options now includes better support for scatter viewers, including toggling line visibility. [#2449]

3.7.1 (2023-10-25)

Bug Fixes

  • Fixed bug which did not update all references to a viewer's ID when updating a viewer's reference name. [#2479]
  • Deleting a subset while actively editing it now deselects the subset tool, preventing the appearance of "ghost" subsets. [#2497]
  • Fixes a bug in plot options where switching from multi to single-select mode failed to properly update the selection. [#2505]

Cubeviz

  • Fixed moment map losing WCS when being written out to FITS file. [#2431]
  • Fixed parsing for VLT MUSE data cube so spectral axis unit is correctly converted. [#2504]
  • Updated glue-core pin to fix the green layer that would appear if 2D data was added to image viewers while spectral subsets were defined. [#2527]

Imviz

Mosviz

Specviz

  • Spectrum that has incompatible flux unit with what is already loaded will no longer be loaded as ghost spectrum. It will now be rejected with an error message on the snackbar. [#2485]

Specviz2d

Other Changes and Additions

  • Compatibility with Python 3.12. [#2473]

3.7 (2023-09-21)

New Features

  • Improved design of Launcher and pass filepath arg from cli when no config specified. [#2311, #2417]
  • Subset Tools plugin now displays the parent data of a spatial (ROI) subset. [#2154]
  • Data color cycler and marker color updates for increased accessibility. [#2453]
  • Add support for MultiMaskSubsetState in viz.app.get_subsets() and in the Subset Plugin [#2462]

Cubeviz

  • Add Spectral Extraction plugin for Cubeviz, which converts spectral cubes to 1D spectra with propagated uncertainties [#2039]

Imviz

  • The stretch histogram within plot options can now be popped-out into its own window. [#2314]
  • vmin/vmax step size in the plot options plugin is now dynamic based on the full range of the image. [#2388]
  • Footprints plugin for plotting overlays of instrument footprints or custom regions in the image viewer. [#2341, #2377, #2413]
  • Add a curve to stretch histograms in the Plot Options plugin representing the colormap stretch function. [#2390]
  • The stretch histogram is now downsampled for large images for improved performance. [#2408]
  • Add multiselect support to the subset plugin for recentering only. [#2430]

Mosviz

  • Plot options now includes the stretch histogram previously implemented for Imviz/Cubeviz. [#2407]

Specviz

  • Improve visibility of live-collapsed spectra from spatial regions in Cubeviz [#2387]

Specviz2d

  • Plot options now includes the stretch histogram previously implemented for Imviz/Cubeviz. [#2407]

API Changes

  • Adjusted axis ticks and labels for spectrum viewers to be more readable. Axes on image viewers no longer show by default. [#2372]

Cubeviz

Imviz

  • Fixed Subset Tools unable to re-center non-composite spatial subset on an image that is not the reference data when linked by WCS. [#2154]
  • Fixed inaccurate results when aperture photometry is performed on non-reference data that are of a different pixel scale or are rotated w.r.t. the reference data when linked by WCS. [#2154]
  • Fixed wrong angle translations between sky regions in regions and photutils. They were previously off by 90 degrees. [#2154]

Mosviz

Specviz

Specviz2d

Bug Fixes

  • Circle tool to create a circular Subset no longer results in an ellipse under certain conditions. [#2332]
  • Fixes turning off multiselect mode for a dropdown when no selections are currently made. Previously this resulted in a traceback, but now applies the default selection for single-select mode. [#2404]
  • Fixes tracebacks from plugins opened in popout windows. [#2411]
  • Fixes app not displaying properly in Notebook 7. [#2420]

Cubeviz

Imviz

Mosviz

  • Fixes slit overlay angle in cutout viewer. [#2434]

Specviz

Specviz2d

Other Changes and Additions

  • Improved logic for handling active state of plugins. [#2386, #2450]
  • API framework for batch aperture photometry. [#2401]

3.6.2 (2023-08-25)

Bug Fixes

  • Explot Plot now throws exception if its "save_figure" method is called with a path that contains invalid directory. [#2339]
  • Plugin dropdown elements with multiselect mode enabled will no longer reset the selection when the choices change if any of the previous entries are still valid. [#2344]
  • Fixed Plot Options stretch histogram bug that raised an error when a spatial subset was selected in Imviz and Cubeviz. [#2393]

Cubeviz

  • Fix laggy behavior with WCS-TAB cubes by always linking by pixel instead of WCS. [#2343]
  • Fix matched zoom tool behavior. [#2359]

Imviz

  • Improved ASDF parsing support for non-standard Roman-like data products. [#2351]

Mosviz

Specviz

Specviz2d

3.6.1 (2023-08-01)

Bug Fixes

Imviz

  • Fixes possible extreme lag when opening the Plot Options plugin. [#2326]
  • Fixes minor layout issues in the Plot Options plugin. [#2326]
  • Fixes compass updating in popout/inline mode. [#2326]

3.6 (2023-07-28)

New Features

  • Introduce jdaviz.open to automatically detect the appropriate config and load data [#2221]
  • Add Simplify button to subset plugin to make composite spectral subsets more user friendly. [#2237]
  • Plots within plugins can now be popped-out into their own windows. [#2254]
  • The specviz.load_spectrum method is deprecated; use specviz.load_data instead. [#2273]
  • Add launcher to select and identify compatible configurations, and require --layout argument when launching standalone. [#2257, #2267]
  • Viewer toolbar items hide themselves when they are not applicable. [#2284]
  • Data menu single select will default to the first element. [#2298]
  • Line Analysis "Redshift from Centroid" only visible when lines are loaded. [#2294]
  • Add lines representing the stretch vmin and vmax to the plot options histogram. [#2301]
  • Add option to set bin size in plot options plugin and API call to change histogram viewer limits. [#2309]

Cubeviz

  • Added the ability to export cube slices to video. User will need to install opencv-python separately or use [all] specifier when installing Jdaviz. [#2264]

Imviz

  • Added the ability to load DS9 region files (.reg) using the IMPORT DATA button. However, this only works after loading at least one image into Imviz. [#2201]
  • Added support for new CircularAnnulusROI subset from glue, including a new draw tool. [#2201, #2240]

Mosviz

  • Improved x-axis limit-matching between 2d and 1d spectrum viewers. [#2219]

Specviz

Specviz2d

  • Re-enable support for displaying the 1d spectrum in wavelength/frequency space, with improved x-axis limit-matching. [#2219]

API Changes

  • viz.app.get_data_from_viewer() is deprecated; use viz.get_data(). [#2242]
  • viz.app.get_subsets_from_viewer() is deprecated; use viz.app.get_subsets(). [#2242]
  • viz.get_data() now takes optional **kwargs; e.g., you could pass in function="sum" to collapse a cube in Cubeviz. [#2242]
  • Live-previews and keypress events that depend on the plugin being opened now work for inline and popout windows. [#2295]

Cubeviz

Imviz

  • Simple Aperture Photometry plugin: Custom annulus background options are removed. Please draw/load annulus as you would with other region shapes, then select it in the plugin from Subset dropdown for the background. Using annulus region as aperture is not supported. [#2276, #2287]

Mosviz

  • Added new statistic keyword to mosviz.get_viewer("spectrum-2d-viewer").data() to allow user to collapse 2D spectrum to 1D. [#2242]

Specviz

  • Re-enabled unit conversion support. [#2127]

Specviz2d

Bug Fixes

  • Fixed wrong elliptical region translation in app.get_subsets(). [#2244]
  • Fixed cls input being ignored in viz.get_data(). [#2242]
  • Line analysis plugin's show_continuum_marks is deprecated, use plugin.as_active() instead. [#2295]

Cubeviz

  • Moment Map plugin now writes FITS file to working directory if no path provided in standalone mode. [#2264]
  • Fixes detection of spatial vs spectral subsets for composite subsets. Also fixes the shadow mark that shows the intersection between spatial and spectral subsets. [#2207, #2266, #2291]
  • Prevent Plot Options plugin from hanging when selecting a spectrum viewer in Cubeviz. [#2305]

Imviz

Mosviz

Specviz

  • Uncertainties in spectra given to Specviz will now work correctly when non-standard deviation type [#2283]

Specviz2d

Other Changes and Additions

  • Gaussian smooth plugin excludes results from the gaussian smooth plugin from the input dataset dropdown. [#2239]
  • CLI launchers no longer require data to be specified [#1960]
  • Added direct launchers for each config (e.g. specviz) [#1960]
  • Replacing existing data from a plugin (e.g., refitting a model with the same label) now preserves the plot options of the data as previously displayed. [#2288]

3.5 (2023-05-25)

New Features

  • Model fitting results are logged in a table within the plugin. [#2093]
  • Auto-identify a configuration/helper for a given data file. [#2124]
  • Exact-text filtering for metadata plugin. [#2147]
  • Update Subset Plugin to utilize get_subsets(). [#2157]
  • Histogram showing image values in stretch limits section of plot options plugin. [#2153]
  • Vertical (y-range) zoom tool for all spectrum and spectrum-2d viewers. This also modifies the icon of the horizontal (x-range) tool to be more consistent with the horizontal subset selection tool. [#2206, #2212]
  • Allow Subset Plugin to edit composite subsets. [#2182]
  • Support for Scatter plots/markers in plot options. [#2193]

Cubeviz

  • get_data now supports function=True to adopt the collapse-function from the spectrum viewer. [#2117]
  • get_data now supports applying a spectral mask to a collapse spatial subset. [#2199, #2214]

Imviz

  • Table exposing past results in the aperture photometry plugin. [#1985, #2015]
  • New canvas rotation plugin to rotate displayed image without affecting actual data. [#1983]
  • Preliminary support for Roman ASDF data products. This requires roman-datamodels to be installed separately by the user. [#1822]
  • Canvas Rotation plugin is now disabled for non-Chromium based browsers [#2192]

Mosviz

  • NIRSpec automatic loader now can take a single image as input, instead of requiring the number of cutouts to be the same as the number of 1D spectra. [#2146]

API Changes

  • Add get_subsets() method to app level to centralize subset information retrieval. [#2087, #2116, #2138]

Imviz

  • Saving a plot to a PNG (via the astrowidgets API or export plot plugin API) with a provided filename will no longer show the file dialog. If the given file exists, it is silently overwritten. [#929]

Bug Fixes

  • Fixed a bug where Import Data button crashes under certain condition. [#2110]

Cubeviz

  • Fixed get_model_parameters error when retrieving parameters for a cube fit. This also removed the "_3d" previously appended to model labels in the returned dict. [#2171]

Imviz

  • Do not hide previous results in aperture photometry when there is a failure, but rather show the failure message within the plugin UI to indicate the shown results are "out of date". [#2112]
  • More efficient parser for Roman data products in Imviz [#2176]

Mosviz

  • Fixed several data loader bugs for uncommon use cases. [#2146]

Other Changes and Additions

  • move build configuration to pyproject.toml as defined in PEP621 [#1661]
  • drop support for Python 3.8 [#2152]

3.4 (2023-03-22)

New Features

  • CLI launchers no longer require data to be specified. [#1890]
  • Configurations that support multiple, simultaneous data files now allow multiple data products to be specified in the command line. [#1890]
  • Ability to cycle through datasets to expose information during mouseover. [#1953]
  • New markers plugin to log mouseover information to a table. [#1953]

Cubeviz

  • Moment map output now has celestial WCS, when applicable. [#2009]
  • Custom Spectrum1D writer for spectral cube generated by Cubeviz. [#2012]

Imviz

  • Table exposing past results in the aperture photometry plugin. [#1985, #2015]

API Changes

  • Add get_data() method to base helper class to centralize data retrieval. [#1984, #2106]
  • Export plot plugin now exposes the viewer dropdown in the user API. [#2037]
  • Replaced internal get_data_from_viewer() calls, specviz.get_spectra now returns spectra for all data+subset combinations. [#2072, #2106]

Cubeviz

  • Removed deprecated CubeViz; use Cubeviz. [#2092]

Imviz

  • ASDF-in-FITS parser for JWST images now uses stdatamodels. [#2052]
  • Removed deprecated load_static_regions_from_file and load_static_regions; use load_regions_from_file and load_regions. [#2092]

Mosviz

  • Removed deprecated MosViz; use Mosviz. [#2092]

Specviz

  • Removed deprecated SpecViz; use Specviz. [#2092]

Bug Fixes

Cubeviz

  • Fixed a bug where sky coordinates reported to coordinates info panel might be wrong for "uncert" and "mask" data. This bug only happens when certain parsing conditions were met. When in doubt, always verify with info from "flux" data. [#2009]

Imviz

  • Pressing "Home" button on empty additional viewer when images are linked by WCS no longer crashes. [#2082]

Other Changes and Additions

Mosviz

  • Removed subset selection from the Mosviz image viewer. [#2102]

3.3.1 (2023-03-09)

Bug Fixes

  • Auto-label component no longer disables the automatic labeling behavior on any keypress, but only when changing the label [#2007].
  • Loading valid data no longer emits JSON serialization warnings. [#2011]
  • Fixed linking issue preventing smoothed spectrum from showing in Specviz2D. [#2023]
  • Fixed redshift slider enabling/disabling when calling load_line_list, plot_spectral_line, plot_spectral_lines, or erase_spectral_lines. [#2055]
  • Fixed detecting correct type of composite subsets in subset dropdowns in plugins. [#2058]

Cubeviz

  • Calling cubeviz.specviz.y_limits(...) no longer emits irrelevant warning. [#2033]
  • Fix initial slice of uncertainty viewer. [#2056]

Imviz

  • Fixed aperture and background dropdowns validation for Simple Aperture Photometry plugin. [#2032]
  • Line Profiles plugin no longer updates when "l" key is pressed while plugin is not opened. [#2073]

Mosviz

Specviz

Specviz2d

3.3 (2023-02-09)

New Features

Cubeviz

  • Improved mouseover info display for spectrum viewer. [#1894]

Mosviz

  • Reliably retrieves identifier using each datasets' metadata entry. [#1851]
  • Improved mouseover info display for spectrum viewer. [#1894]

Specviz

  • Improved mouseover info display for spectrum viewer. [#1894]

Specviz2d

  • Improved mouseover info display for spectrum viewer. [#1894]

Bug Fixes

Mosviz

  • RA/Dec fallback values changed to "Unspecified" to avoid JSON serialization warning when loading data. [#1958, #1992]

Other Changes and Additions

  • Gaussian Smooth products are always labeled with the original data [#1973]

3.2.2 (unreleased)

Bug Fixes

Cubeviz

Imviz

Mosviz

Specviz

Specviz2d

3.2.1 (2023-02-02)

Bug Fixes

Imviz

  • Fixed crashing when clicking Home button after markers are added. [#1971]

Specviz2d

  • Fixes link for help button in app toolbar. [#1981]

Other Changes and Additions

  • Unit Conversion plugin is temporarily disabled while being reworked. [#1970]

3.2 (2023-01-04)

New Features

  • New rainbow, reversed rainbow, and seismic (blue-red) colormaps for images. [#1785]
  • Spinner in plot options while processing changes to contour settings. [#1794]
  • Model fitting plugin can optionally expose the residuals as an additional data collection entry. [#1864, #1891]
  • Resetting viewer limits (via reset_limits or the zoom home button) now accounts for all visible data layers instead of just the reference data. [#1897]
  • Linear1D model component now estimates slope and intercept. [#1947]
  • Model fitting and line analysis plugins provide a warning and prohibit calculating results if the selected data entry and spectral subset do not overlap on the spectral axis. [#1935]
  • Model fitting: API and UI to re-estimate model parameters based on current data/subset selection. [#1952]

Cubeviz

  • Added ability to load plain Numpy array cube. [#1773]
  • Added Slice plugin player control buttons. [#1848]

Imviz

  • Warnings in aperture photometry plugin when using raw profile with large subsets. [#1801]
  • Subset Tools plugin now allows recentering of editable spatial subset. [#1823]
  • Links control plugin shows a confirmation overlay to clear markers when changing linking type. [#1838]

Mosviz

  • Disable simultaneous row plotting and 1D linking in Mosviz to substantially decrease load times. [#1790]
  • Added coordinates display panels for Mosviz viewers. [#1795]
  • load_data method can now load JWST NIRCam and NIRSpec level 2 data. [#1835]

Specviz

  • Spectrum viewer now shows X and Y values under cursor. [#1759]
  • Switch to opt-in concatenation for multi-order x1d spectra. [#1659]

Specviz2d

  • Update to be compatible with changes in specreduce 1.3, including FitTrace with Polynomial, Spline, and Legendre options. [#1889]
  • Add dropdown for choosing background statistic (average or median). [#1922]

API Changes

Cubeviz

  • CubeViz is deprecated, use Cubeviz. [#1809]

Imviz

  • Simple Aperture Photometry plugin no longer performs centroiding. For radial profile, curve of growth, and table reporting, the aperture center is used instead. For centroiding, use "Recenter" feature in the Subset Tools plugin. [#1841]

Mosviz

  • Removed unused MosvizProfileView viewer class. [#1797]
  • MosViz is deprecated, use Mosviz. [#1809]

Specviz

  • SpecViz is deprecated, use Specviz. [#1809]

Bug Fixes

  • Console logging is restored for "Desktop Mode" Windows users. [#1887]
  • Model fitting initial estimates now respect selected subset. [#1947, #1954]

Cubeviz

  • Support for fitting spectral subsets with Cubeviz [#1834]

Imviz

  • Clearing markers in Catalog Search will only hide them, which improves "Clear" performance. [#1774]
  • Adding data will not result in clearing existing markers. [#1848]
  • viewer.center_on() now behaves correctly on non-reference data. [#1928]

Mosviz

  • mosviz_row metadata now included in NIRISS-parsed 1D spectra. [#1836]
  • Now loads NIRCam direct image properly when loading a directory. [#1948]

3.1.2 (2022-12-20)

Bug Fixes

  • Avoid a non-finite error in model fitting by not passing spectrum uncertainties as weights if the uncertainty values are all 0. [#1880]
  • Redshift is no longer reset to zero when adding results from plugins to app. [#1915]

Imviz

  • Viewer options in some plugins no longer displaying the wrong names. [#1920]
  • Fixes cropped image layer with WCS linking without fast-approximation, mouseover display for GWCS now shows when information is outside original bounding box, if applicable. [#1908]

Mosviz

  • Prevent color cycling when selecting different objects/rows [#1900]

3.1.1 (2022-11-23)

Bug Fixes

  • Change box zoom to always maintain aspect ratio. [#1726]
  • Fixed removing image data from viewer when changing row. [#1812]
  • Prevent duplicate labels by changing duplicate number appended to label to max number (of duplicates) plus 1. [#1824]
  • Layer lettering now supports up to 702 layers. Beyond that, special characters are used. [#1850]
  • Fix cycler so new data added have different colors [#1866]

Cubeviz

  • Fix spatial-spectral highlighting after adding spectral data set (either manually or by loading and results from plugins into the spectral-viewer) which had prevented new subsets from being created. [#1856]

Imviz

Mosviz

  • Data unassigned a row is hidden under the subdropdown in the data dropdown. [#1798, #1808]
  • Missing mosviz_row metadata in NIRISS-parsed 1D spectra now added. [#1836]
  • Allow Mosviz load_data method to load only 1D or 2D spectra. [#1833]

Specviz

Specviz2d

  • Fixed options for peak method in spectral extraction plugin. [#1844]

3.1 (2022-10-26)

New Features

  • Add support for nonstandard viewer reference names [#1681]
  • Centralize data label generation if user does not provide a label with data load. Also prevent duplicate data labels from being added to data collection. [#1672]

Imviz

  • Catalogs plugin now supports loading a JWST catalog from a local ECSV file. [#1707]
  • New "batch_load" context manager to optimize loading multiple images. [#1742]

Specviz2d

  • Improved logic for initial guess for position of "Manual" background trace in spectral extraction plugin. [#1738]
  • Now supports loading a specific extension of the 2D spectrum file and transposing data on load. [#1705]
  • Spectral extraction plugin now supports visualizing and exporting the 1D spectrum associated with the background region. [#1682]

Bug Fixes

  • Disable unit conversion if spectral axis is in pixels or if flux is in counts, respectively. [#1734]
  • Improved performance when toggling visibility of data layers in data menu. [#1742]

Cubeviz

  • Fixed parsing of data cube without WCS. [#1734]

Imviz

  • Fixed Simple Aperture Photometry plugin compatibility with astropy v5.1.1. [#1769]

Mosviz

  • Fixed toolbar on 2d profile viewer. [#1778]

Specviz2d

  • Fixed parser not loading x1d when s2d is provided. [#1717]
  • Fixed toolbar on 2d spectrum viewer. [#1778]

Other Changes and Additions

  • Updated example notebooks (except MosvizExample) to use in-flight JWST data. [#1680]
  • Change RA/Dec significant figures from 4 to 6 in aperture photometry plugin. [#1750]

3.0.2 (2022-10-18)

Bug Fixes

  • Fix subset selection tool conflicts caused by a duplicate toolbar. [#1679]
  • Fixed blank tabbed viewers. [#1718]
  • Prevent app.add_data_to_viewer from loading data from disk [#1725]
  • Fix bug in creating and removing new image viewers from Imviz [#1741]
  • Updated Zenodo link in docs to resolve to latest version. [#1743]

Imviz

  • Fixed Compass crashing while open when loading data. [#1731]

Specviz2d

  • Fixed padding on logger overlay. [#1722]
  • Changing the visibility of a data entry from the data menu no longer re-adds the data to the viewer if it is already present, which avoids resetting defaults on the percentile and/or color or the layer. [#1724]
  • Fixed handling of "Manual" background type in spectral extraction plugin. [#1737]

3.0.1 (2022-10-10)

  • Fixed Citations file to accurately reflect release.

3.0 (2022-10-10)

New Features

  • Profile viewers now support plotting with profiles "as steps". [#1595, #1624]
  • Use spectrum's uncertainty as weight when doing model fitting. [#1630]
  • Line flux in the Line Analysis plugin are reported in W/m2 if Spectral Flux is given in Jy [#1564]
  • User-friendly API access to plugins, with exposed functionality for: line analysis, gaussian smooth, moment maps, compass, collapse, metadata, slice, plot options, model fitting, links control, export plot, and spectral extraction. [#1401, #1642, #1643, #1636, #1641, #1634, #1635, #1637, #1658, #1640, #1657, #1639, #1699, #1701, #1702, #1708]
  • Line Lists show which medium the catalog wavelengths were measured in, in accordance to the metadata entry. Lists without medium information are removed, until such information can be verified [#1626]
  • Cycle through colors applied to data when multiple datasets are loaded to the same viewer [#1674]
  • Added ability to set height of application widget using show method. [#1646]
  • Add Common Galactic line lists, split Atomic/Ionic list with verified medium info [#1656]

Cubeviz

  • Image viewers now have linked pan/zoom and linked box zoom. [#1596]
  • Added ability to select spatial subset collapsed spectrum for Line Analysis. [#1583]
  • Increased size of Cubeviz configuration from 600px to 750px. [#1638]

Imviz

  • Changing link options now updates immediately without needing to press "Link" button. [#1598]
  • New tool to create a single-pixel spatial region on the image. [#1647]

Specviz2d

  • Support for Horne/Optimal extraction. [#1572]
  • Support for importing/exporting Trace objects as data entries. [#1556]
  • 2D spectrum viewer now has info panel for pixel coordinates and value. [#1608]

Bug Fixes

  • Fixed loading data via the Import Data button on top-left of the application. [#1608]
  • Floating menus are now attached to their selector element. [#1673, #1712]
  • Remove model fitting equation length restriction. [#1685]
  • Fixed crashing of model fitting when a parameter is fixed before fitting is done. [#1689]
  • Fixed IndexError when editing a subset while subset selection is set to "Create New". [#1700]

Cubeviz

  • Calling cubeviz.load_data(data, data_label), where data_label is passed in as second positional argument instead of keyword, is now allowed. [#1644]
  • A warning will be presented when overwriting a moment map to an existing file on disk. [#1683, #1684]

Imviz

  • Fixed inaccurate aperture photometry results when aperture photometry is done on a non-reference image if images are linked by WCS. [#1524]
  • Calling imviz.load_data(data, data_label), where data_label is passed in as second positional argument instead of keyword, is now allowed. Previously, this will crash because second positional argument is actually a parser_reference that is meant for internal use. [#1644]
  • Fixed crashing for when data is accidentally loaded multiple times or when subset is deleted after a viewer is deleted. [#1649]

Mosviz

  • R-grism 2D spectrum data are now loaded with the correct orientation. [#1619]
  • Fixed a bug to skip targets not included in NIRISS source catalog, improving lod times [#1696]

Specviz

  • Line Lists plugin now disabled if no data is loaded instead of letting user load a list list and crash. [#1691]

Specviz2d

  • Fixed default spectral extraction parameters when the background separation otherwise would have fallen directly on the edge of the image. [#1633]
  • Fixed parser for Level 2 NIRSpec s2d files. [#1608]
  • Spectral-extraction plugin: support floats for all input trace positions, separations, and widths. [#1652]

Other Changes and Additions

  • Changed unit formatting to avoid astropy.units warnings in Line Analysis plugin. [#1648]

Cubeviz

  • Changed the default layout to have only two image viewers, and enabled tabbing and dragging the viewers. [#1646]

2.10 (2022-08-26)

New Features

  • Layer icons now show indication of linewidth. [#1593]
  • Model Fitting plugin now displays parameter uncertainties after fitting. [#1597]

Bug Fixes

Cubeviz

  • Future proof slicing logic for as_steps implementation in glue-jupyter 0.13 or later. [#1599]

2.9 (2022-08-24)

New Features

  • New popout locations display Jdaviz in a detached popup window (popout:window) or browser tab (popout:tab). [#1503]
  • Subset Tools plugin now allows basic editing, including rotation for certain shapes. [#1427, #1574, #1587]
  • New jdaviz.core.region_translators.regions2roi() function to convert certain regions shapes into glue ROIs. [#1463]
  • New plugin-level open_in_tray method to programmatically show the plugin. [#1559]

Cubeviz

  • Cubeviz now has ellipse spatial Subset selection tool. [#1571]
  • Cubeviz now has load_regions_from_file() and load_regions() like Imviz. [#1571]

Imviz

  • New "Catalog Search" plugin that uses a specified catalog (currently SDSS) to search for sources in an image and mark the sources found. [#1455]
  • Auto-populate simple aperture photometry values if JWST data is loaded into viewer. [#1549]
  • Pressing Shift+b now blinks backwards. Right-clicking on the image while Blink tool is active on the toolbar also blinks backwards. [#1558]

Mosviz

  • NIRISS parser now sorts FITS files by header instead of file name. [#819]

Specviz2d

  • Spectral extraction plugin. [#1514, #1554, #1555, #1560, #1562]
  • CLI support for launching Specviz2d for a single 2D spectrum file input. Use notebook version if you want to open separate 2D and 1D spectra in Specviz2d. [#1576]
  • New specviz2d.specviz helper property to directly access Specviz functionality from Specviz2d. [#1577]

API Changes

Imviz

  • Imviz.load_static_regions_from_file() and Imviz.load_static_regions() are deprecated in favor of Imviz.load_regions_from_file() and Imviz.load_regions(), respectively. This is because some region shapes can be made interactive now even though they are loaded from API. The new methods have slightly different API signatures, please read the API documentation carefully before use. [#1463]

Bug Fixes

  • Fixes subset mode to reset to "Replace" when choosing to "Create New" subset. [#1532]
  • Fixes behavior of adding results from a plugin that overwrite an existing entry. The loaded and visibility states are now always adopted from the existing entry that would be overwritten. [#1538]
  • Fix support for ipywidgets 8 (while maintaining support for ipywidgets 7). [#1592]

Cubeviz

  • Fixed validation message of moment number in moment map plugin. [#1536]
  • Fixed viewer.jdaviz_helper returning Specviz helper instead of Cubeviz helper after Specviz helper is called via Cubeviz.specviz. Now viewer.jdaviz_helper always returns the Cubeviz helper. [#1546]
  • Increased spectral slider performance considerably. [#1550]
  • Fixed the spectral subset highlighting of spatial subsets in the profile viewer. [#1528]

Specviz

  • Fixed a bug where spectra with different spectral axes were not properly linked. [#1526, #1531]

Other Changes and Additions

  • Added a UV Galactic linelist. [#1522]
  • astroquery is now a required dependency of Jdaviz. [#1455]

2.8 (2022-07-21)

New Features

  • Added viewer/layer labels with icons that are synced app-wide. [#1465]

Cubeviz

  • The "Import Data" button is hidden after a data cube is loaded into the app [#1495]

Mosviz

  • Added --instrument CLI option to support NIRISS data loading in Mosviz. [#1488]

Bug Fixes

  • Fix scrolling of "x" button in data menus. [#1491]
  • Fix plot options colormap when setting colormap manually through API. [#1507]

Cubeviz

  • Cubeviz parser now sets the wavelength axis to what is in the CUNIT3 header [#1480]
  • Includes spectral subset layers in the layer dropdowns in plot options and fixes behavior when toggling visibility of these layers. [#1501]

Imviz

  • Fixed coordinates info panel crashing when HDU extension with non-celestial WCS is loaded into Imviz together with another extension with celestial WCS. [#1499]

Other Changes and Additions

  • Added a more informative error message when trying to load Jdaviz outside of Jupyter. [#1481]

2.7.1 (2022-07-12)

Bug Fixes

  • Fix updating coordinate display when blinking via click. [#1470]

Cubeviz

  • Replaced deprecated FILETYPE header keyword with EXP_TYPE to identify JWST cubes for proper MJD-OBS handling. [#1471]
  • Fixed a bug where having Subset breaks coordinates information display in image viewers. [#1472]

Other Changes and Additions

2.7.0.post1 (2022-07-07)

  • Post-2.7 release to fix a PyPi distribution problem.

2.7 (2022-07-06)

New Features

  • The app and individual plugins can be opened in a new window by clicking a button in the top right-hand corner. [#977, #1423]
  • Snackbar queue priority and history access. [#1352, #1437]
  • Subset Tools plugin now shows information for composite subsets. [#1378]
  • Plot options are simplified and include an advanced mode to act on multiple viewers/layers simultaneously. [#1343]
  • Labels in data menus are truncated to fit in a single line but ensure visibility of extensions. [#1390]
  • Data menus now control visibility of layers corresponding to the data entries instead of loading/unloading the entries from the viewers. Data entries that are unloaded now appear in an expanded section of the menu and can be re-loaded into the viewer. [#1400]
  • Several reversed version of colormaps now available for image viewers. [#1407]
  • Simple zoom "back" button in all viewers. [#1436]

Cubeviz

  • New tool for visualizing spectrum at a pixel's coordinate location in the image viewer [#1317, #1377]

Imviz

  • Added the ability to fit Gaussian1D model to radial profile in Simple Aperture Photometry plugin. Radial profile and curve of growth now center on source centroid, not Subset center. [#1409]

API Changes

  • Default percentile for all image viewers is now 95%, not min/max. [#1386]
  • Default verbosity for popup messages is now "warnings" but the history logger is still at "info" so you can see all messages there instead. [#1368]
  • In the Color Mode options under Plot Options, "Colormaps" and "One color per layer" have been renamed to "Colormap" and "Monochromatic," respectively, for all image viewers. [#1406]
  • Viz tool display changed to viz.show() from viz.app. Sidecar no longer returned by show methods. [#965]

Imviz

  • In the toolbar, linked box-zoom and linked pan/zoom are now the defaults. Right-click on the respective button to access single-viewer box-zoom or single-viewer pan/zoom. [#1421]
  • viewer.set_colormap() method now takes Glue colormap name, not matplotlib name. This is more consistent with colormap options under Plot Options. [#1440]

Bug Fixes

  • Fixed HeI-HeII line list loading. [#1431]

Cubeviz

  • Fixed the default thickness of a subset layer in the spectral viewer to remain 1 for spatial subsets and 3 for spectral subsets. [#1380]
  • Fixed linking of plugin data to the reference data that was used to create it [#1412]
  • Fixed coordinates display not showing the top layer information when multiple layers are loaded into the image viewer. [#1445]

Imviz

  • Fixed a bug where image loaded via the "IMPORT DATA" button is not linked to the data collection, resulting in Imviz unusable until the data are re-linked manually. [#1365]
  • Fixed a bug where coordinates display erroneously showing info from the reference image even when it is not visible. [#1392]
  • Fixed a bug where Compass zoom box is wrong when the second image is rotated w.r.t. the reference image and they are linked by WCS. [#1392]
  • Fixed a bug where Line Profile might crash when the second image is rotated w.r.t. the reference image and they are linked by WCS. [#1392]
  • Contrast/bias mouse-drag is now more responsive and calculates contrast in the same way as Glue in Qt mode. [#1403]
  • Fixed a bug where some custom colormap added to Imviz is inaccessible via viewer.set_colormap() API. [#1440]
  • Fixed a bug where Simple Aperture Photometry plugin does not know an existing Subset has been modified until it is reselected from the dropdown menu. [#1447]
  • Disables the "popout in new window" buttons on the image viewer tabs in favor of other ways of popping out Jdaviz from notebook. [#1461]

Mosviz

  • Data dropdown in the gaussian smooth plugin is limited to data entries from the spectrum-viewer (excluding images and 2d spectra). [#1452]

2.6 (2022-05-25)

New Features

  • Line list plugin now supports exact-text filtering on line names. [#1298]
  • Added a Subset Tools plugin for viewing information about defined subsets. [#1292]
  • Data menus in the viewers are filtered to applicable entries only and support removing generated data from the app. [#1313]
  • Added offscreen indication for spectral lines and slice indicator. [#1312]

Cubeviz

  • Cubeviz image viewer now has coordinates info panel like Imviz. [#1315]
  • New Metadata Viewer plugin. [#1325]

Imviz

  • New way to estimate background from annulus around aperture in Simple Aperture Photometry plugin. [#1224]
  • New curve of growth plot available in Simple Aperture Photometry plugin. [#1287]
  • Clicking on image in pan/zoom mode now centers the image to location under cursor. [#1319]

Specviz

  • Line List Spectral Range filter displays only lines with an observed wavelength within the range of the spectrum viewer [#1327]

Bug Fixes

  • Line Lists plugin no longer crashes when a list is removed under certain conditions. [#1318]

Cubeviz

  • Parser now respects user-provided data_label when Spectrum1D object is loaded. Previously, it only had effect on FITS data. [#1315]
  • Fixed a bug where fitting a model to the entire cube returns all zeroes on failure. [#1333]

Imviz

  • Line profile plot in Line Profile plugin no longer affects radial profile plot in Simple Aperture Photometry plugin. [#1224]
  • Line profile plot no longer report wrong coordinates on dithered data that is not the reference data. [#1293]
  • Radial profile plot in Simple Aperture Photometry plugin no longer shows masked aperture data. [#1224]
  • Aperture sum in Simple Aperture Photometry plugin no longer reports the wrong value in MJy when input data is in MJy/sr. Previously, it applied number of pixels twice in the calculations, so sum in MJy with 10-pixel aperture would be off by a factor of 10. This bug did not affect data in any other units. [#1332]
  • Markers API now handles GWCS with ICRS Lon/Lat defined instead of Right Ascension and Declination. [#1314]

Specviz

  • Fixed clearing an identified spectral line when its removed. [#1322]

Specviz2d

  • Fixed a regression that caused NIRSpec s2d to stop loading properly. [#1307]

2.5 (2022-04-28)

New Features

  • Search bar to filter plugins in sidebar. [#1253]

Cubeviz

  • Add ESA pipeline data parser. [#1227]

Mosviz

  • Mosviz Desktop App utilizes new directory parsers, which falls back to NIRSpec parser if no instrument keyword is specified. [#1232]

API Changes

  • CLI now takes the layout as a required first positional argument after jdaviz (jdaviz cubeviz path/to/file). [#1252]

Bug Fixes

  • Fixed clicking in Safari on MacOS when using CTRL-click as right-click. [#1262]

Imviz

  • No longer issues a Snackbar error message when all data is deselected. [#1250]

Other Changes and Additions

  • Change default collapse function to sum. This affects collapsed spectrum in Cubeviz and its Collapse plugin default. [#1229, #1237]
  • Data dropdowns in plugins are now filtered to only applicable entries. [#1221]
  • Cube data now has spectral axis last in the backend, to match specutils Spectrum1D axis order and work with updated glue-astronomy translators. [#1174]
  • Plugins that create data entries allow overriding the default labels. [#1239]
  • Automatic defaults for model component IDs and equation editor in model fitting. [#1239]
  • Help button in toolbar to open docs in a new tab. [#1240]
  • Snackbar queue handles loading interrupt more cleanly. [#1249]
  • Reported quantities are rounded/truncated to avoid showing unnecessary precision. [#1244]
  • Line analysis quantities are coerced so length units cancel and constants are removed from units. [#1261]

2.4 (2022-03-29)

New Features

  • Lines from the line list plugin can be selected to help identify as well as to assign redshifts from the line analysis plugin. [#1115]
  • New jdaviz.core.region_translators module to provide certain translations from regions shapes to photutils apertures, and vice versa. [#1138]

Imviz

  • New Line Profiles (XY) plugin to plot line profiles across X and Y axes for the pixel under cursor when "l" key is pressed or for manually entered X and Y values on the displayed image. [#1132]
  • Simple aperture photometry plugin now uses photutils to for all calculation. Additional photometry results are also added, such as centroid and FWHM. [#1138]

Specviz

  • Exposed toggle in Plot Options plugin for viewing uncertainties. [#1189, #1208]

API Changes

Imviz

  • viewer.marker dictionary now accepts fill as an option, settable to True (default) or False; the latter draws unfilled circle. [#1101]

Bug Fixes

  • Fixed support for table scrolling by enabling scrollbar. [#1116]
  • Fixed loading additional spectra into a spectrum viewer after creating a spectral subset. [#1205]

Cubeviz

  • Fixed linking of data to allow contour over-plotting. [#1154]
  • Fixed an error trace when fitting a model to a spatial subset. [#1176]
  • Fixed the model fitting plugin data dropdown not populating with spatial subsets properly. [#1176]
  • Fixed visibility of switch and dropdown options in gaussian smooth plugin. [#1216]

Imviz

  • Fixed Compass plugin performance for large image. [#1152]
  • Fixed data shown out of order when load_data is called after app. [#1178]
  • Fixed the subsequent dataset not showing after blinking if the dataset being shown is removed from viewer. [#1164]

Other Changes and Additions

  • Jdaviz now requires Python 3.8 or later. [#1145]
  • photutils is now a required dependency. [#1138]
  • Viewer toolbars are now nested and consolidated, with viewer and layer options moved to the sidebar. [#1140]
  • Redshifts imported with a custom line list are now ignored. Redshift must be set app-wide via viz.set_redshift or the line list plugin. [#1134]
  • Subset selection dropdowns in plugins now show synced color indicators. [#1156, #1175]
  • Line analysis plugin now shows uncertainties, when available. [#1192]

2.3 (2022-03-01)

New Features

  • There are now show_in_sidecar and show_in_new_tab methods on all the helpers that display the viewers in separate JupyterLab windows from the notebook. [#952]
  • The line analysis plugin now includes logic to account for the background continuum. [#1060]
  • Specviz can load a SpectrumList and combine all its elements into a single spectrum. [#1014]

Cubeviz

  • Move slice slider to the plugin tray and add capability for selecting by wavelength as well as through a tool in the spectrum viewer. [#1013]

Imviz

  • New metadata viewer plugin. [#1035]
  • New radial profile plot and background auto-population in the simple aperture photometry plugin. [#1030, #1109]
  • New plugin to display compass for image with WCS and also zoom box. [#983]
  • Imviz now loads 3D Numpy array as individual slices at axis=0. Also supports higher dimension as long as the array can be squeezed into 3D. [#1056]
  • New do_link keyword for Imviz.load_data(). Set it to False when loading multiple dataset in a loop but Imviz.link_data() must be run at the end manually afterwards. [#1056]
  • New imviz.load_static_regions_from_file() method to load region file via API. [#1066]

Mosviz

  • New metadata viewer plugin. [#1035]

Specviz

  • New metadata viewer plugin. [#1035]

API Changes

  • Viewers now can access the Jdaviz application using viewer.jdaviz_app and the helper via viewer.jdaviz_helper. [#1051, #1054]
  • Jdaviz no longer uses Python logging to issue warning. Warning is now issued by Python's warnings module. [#1085]

Cubeviz

  • Subsets from the spectrum viewer are now returned as SpectralRegion objects. [#1046]
  • Collapse plugin only collapses into spatial-spatial image now. Default collapse function is now sum, not mean. [#1006]

Imviz

  • imviz.load_static_regions() now returns a dictionary of regions that failed to load with warnings. It also shows a snackbar message. [#1066]

Bug Fixes

  • Model plugin now validates component names to avoid equation failing. [#1020]
  • Model plugin properly updates parameters after fit for compound models. [#1023]
  • Model plugin now respects fixed parameters when applying model to cube, and retains parameter units in that case. [#1026]
  • Model plugin polynomial order now avoids traceback when clearing input. [#1041]
  • Box zoom silently ignores click without drag events. [#1105]
  • Fixes index error when plotting new data/model. [#1120]
  • API calls to subset now return full region. [#1125]

Cubeviz

  • Spectral region retrieval now properly handles the case of multiple subregions. [#1046]
  • Moment Map plugin no longer crashes when writing out to FITS file. [#1099]
  • Moment Maps result is no longer rotated w.r.t. original data. [#1104]

Imviz

  • Imviz no longer crashes when configuration is overwritten by MAST. [#1038]
  • Imviz no longer loads incompatible data from ASDF-in-FITS file. [#1056]
  • Simple Aperture Photometry plugin now shows the entire data collection for the application, not just selected data/subset for the default viewer. [#1096]

Mosviz

Specviz

  • Fix corrupted voila launch notebook. [#1044]
  • Entering line list in units that require spectral equivalencies no longer crashes Line Lists plugin. [#1079]
  • Unit Conversion plugin is now disabled in the presence of any Subset due to incompatibility between the two. [#1130]

Other Changes and Additions

  • Redshift slider and options are moved from the toolbar to the Line List plugin in the plugin tray. [#1031]
  • Spectral lines and redshift are refactored to improve performance. [#1036]
  • Jdaviz no longer depends on spectral-cube. [#1006]
  • Line list plugin now includes a dropdown for valid units for custom lines. [#1073]

2.2 (2021-12-23)

New Features

  • Box and xrange zoom tools for all applicable viewers. [#997]
  • Data and Subset selection are now separate in the Line Analysis plugin, to handle the case of multiple datasets affected by a subset. [#1012]

Bug Fixes

Cubeviz

  • Missing MJD-OBS in JWST data will no longer crash Cubeviz as long as it has MJD-BEG or DATE-OBS. [#1004]

2.1 (2021-12-10)

New Features

  • Support for units in astropy models and BlackBody in modeling plugin. [#953]

Imviz

  • New imviz.create_image_viewer() and imviz.destroy_viewer() methods to allow users to programmatically create and destroy image viewers. [#907]
  • New plugin to control image linking via GUI. [#909]
  • New plugin to perform simple aperture photometry. [#938]
  • Coordinates display now also shows Right Ascension and Declination in degrees. [#971]

Mosviz

  • New toggle button to lock/unlock viewer settings (x-limits in 1d and 2d spectrum viewers and stretch and percentile for 2d spectrum and image viewers). [#918]
  • Ability to add custom columns and change visibility of columns in the table. [#961]
  • Support for redshift slider and new mosviz.get_spectrum_1d and mosviz.get_spectrum_2d helper methods. [#982]

Specviz

  • MIRI s2d files can now be loaded into Specviz2d. [#915]
  • Default new subset/region thickness is set to 3px. [#994]

API Changes

  • Removed unused jdaviz.core.events.AddViewerMessage. [#939]

Bug Fixes

  • vue_destroy_viewer_item no longer called twice on destroy event. [#676, #913]

Imviz

  • imviz.get_interactive_regions() no longer produces long traceback for unsupported region shapes. [#906]
  • Imviz now parses some image metadata into glue and understands ELECTRONS and ELECTRONS/S defined in FITS BUNIT header keyword. [#938]
  • Imviz now updates pixel value correctly during blinking. [#985]
  • Imviz now displays the correct pixel and sky coordinates for dithered images linked by WCS. [#992]

Specviz

  • Fixed a bug where specviz.get_model_parameters() crashes after fitting a Gaussian model in the Model Fitting plugin. [#976]

Other Changes and Additions

  • Cubeviz now loads data cube as Spectrum1D. [#547]
  • The new template load system in ipyvue is used, which enables hot reload. [#913]
  • Plugins now provide options for immediately showing results in applicable viewers. [#974]

2.0 (2021-09-17)

  • Added Imviz configuration for visualization of 2D images.
  • Overhauled Mosviz to drastically increase performance, improve user interface, fix buggy features.
  • Improved other configurations with bug fixes, user experience enhancements, and JWST data formats support.

1.1 (2021-03-22)

New Features

  • Added methods to extract Mosviz data table to csv or astropy table. [#468]
  • Added methods to extract fitted models and model parameters to notebook. [#458]
  • Created a NIRISS dataset parser for Mosviz. [#394]
  • Added a Specviz2d configuration for two-dimensional spectra. [#410, #416, #421]
  • Added a redshift slider to Specviz. [#380, #453, #457]
  • Added new preset spectral line lists. [#379]
  • Added a debugging mode to show stdout and stderr on frontend. [#368]

Bug Fixes

  • Fixed data selection update loop in UI menu. [#427, #456]
  • Fixed a bug when using the Gaussian Smooth plugin multiple times. [#441]
  • Fixed axis autoscaling when redshift slider has been used. [#404, #413]
  • Now properly raises an error when trying to load a non-existent file. [#384]
  • Fixed "Hide All" button behavior in line list plugin. [#383]
  • Fixed a WCS bug in Mosviz. [#377]
  • Fixed failing case of parsing cube extensions. [#374]

Other Changes and Additions

  • Cleaned up the Model Fitting plugin UI. [#485]
  • Improved performance when loading multiple datasets. [#435]
  • Updated example notebooks. [#418]
  • Moved snackbar messages to top of UI. [#375]
  • Removed unused icons from toolbar. [#366]
  • Refactored the Unit Conversion plugin. [#360]
  • Many documentation updates/additions. [#340, #341, #343, #346, #347, #349, #350, #351, #352, #357, #365, #376, #471, #481, #482, #483]

1.0.3 (2020-10-08)

  • Added documentation. [#323, #319, #315, #308, #300]
  • Bug fixes in model fitting [#325], line lists [#326], and cubeviz data labels [#313]
  • Updated vispy dependency. [#311]

1.0.2 (2020-09-23)

  • Incorporate latest releases of dependencies.

1.0.1 (2020-09-18)

  • Fix issue from release.

1.0 (2020-09-18)

  • Official release.

0.1 (2020-08-26)

  • Initial release.