Skip to content

Releases: spacetelescope/jdaviz

v3.9.0

05 Apr 17:58
Compare
Choose a tag to compare

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]

v3.8.2

23 Feb 18:49
Compare
Choose a tag to compare

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]

v3.8.1 Release Notes

21 Dec 21:05
Compare
Choose a tag to compare

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]

Specviz

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

v3.8.0

29 Nov 18:27
Compare
Choose a tag to compare

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]

v3.7.1

25 Oct 18:14
Compare
Choose a tag to compare

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]

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]

Other Changes and Additions

  • Compatibility with Python 3.12. [#2473]

v3.7.0

21 Sep 21:46
7accf87
Compare
Choose a tag to compare

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]

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]

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]

Mosviz

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

Other Changes and Additions

  • Improved logic for handling active state of plugins. [#2386, #2450]

  • API framework for batch aperture photometry. [#2401]

v3.6.2

25 Aug 20:16
3ad62c9
Compare
Choose a tag to compare

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]

v3.6.1

01 Aug 20:35
Compare
Choose a tag to compare

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]

v3.6.0

28 Jul 18:46
Compare
Choose a tag to compare

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]

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]

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]

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]

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]

v3.5.0

25 May 17:31
Compare
Choose a tag to compare

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]