diff --git a/jdaviz/core/data_formats.py b/jdaviz/core/data_formats.py index 13ec295bbe..fddce46099 100644 --- a/jdaviz/core/data_formats.py +++ b/jdaviz/core/data_formats.py @@ -101,9 +101,14 @@ def get_parser(obj, load_as_list=False): parser : str The parser for the data object """ + if isinstance(obj, list): + parsers = [get_parser(o, load_as_list=load_as_list) for o in obj] + if len(set(parsers)) > 1: + raise ValueError("cannot find single parser for list of objects") + return parsers[0] if isinstance(obj, Trace): return 'specreduce-trace' - elif isinstance(obj, Spectrum1D): + if isinstance(obj, Spectrum1D): if obj.flux.ndim == 1: return 'specviz-spectrum1d-parser' else: