Example #1
0
def import_iris_obs():

    caption = "Select a directory containing files from one IRIS OBS, and stack all raster scans."

    data_path = Path(pick_directory(caption))
    rasters = list(data_path.glob("*raster*"))
    sji = list(data_path.glob("*SJI*"))

    sji_data = []

    for s in sji:
        sji_data.append(load_sji_fits(s))

    raster_data = read_iris_spectrograph_level2_fits(rasters,
                                                     spectral_windows=['Mg II k 2796'],
                                                     memmap=False, uncertainty=False)

    raster_data = {window: stack_spectrogram_sequence(seq)
                   for window, seq in raster_data.data.items()}

    result = []
    for window, window_data in raster_data.items():
        w_data = Data(label=f"{window.replace(' ', '_')}")
        w_data.coords = WCSCoordinates(wcs=window_data.wcs)
        w_data.add_component(Component(window_data.data),
                             f"{window}")
        result.append(w_data)

    return result + sji_data
Example #2
0
    def load_rasters(self, windows):
        raster_data = read_iris_spectrograph_level2_fits(self.raster_files,
                                                         spectral_windows=windows,
                                                         memmap=False,
                                                         uncertainty=False)

        raster_data = raster_data.data

        if self.stack.checkState() > 0:
            raster_data = {window: stack_spectrogram_sequence(seq)
                           for window, seq in raster_data.items()}
            self.load_stacked_sequence(raster_data)
        else:
            self.load_sequence(raster_data)
Example #3
0
def import_iris_obs():

    caption = "Select a directory containing files from one IRIS OBS."

    data_path = Path(pick_directory(caption))
    rasters = list(data_path.glob("*raster*"))
    sji = list(data_path.glob("*SJI*"))

    sji_data = []

    for s in sji:
        sji_data.append(load_sji_fits(s))

    raster_data = _parse_iris_raster(
        read_iris_spectrograph_level2_fits(rasters,
                                           uncertainty=False,
                                           memmap=True), 'iris')

    return raster_data + sji_data
Example #4
0
def iris_l2_test_raster():
    return read_iris_spectrograph_level2_fits(
        os.path.join(testpath, 'iris_l2_20170222_153635_3690215148_raster_t000_r00000.fits'))
Example #5
0
def read_iris_raster(raster_file):
    raster_data = _parse_iris_raster(
        read_iris_spectrograph_level2_fits(raster_file), 'iris')
    return raster_data
Example #6
0
def read_iris_raster(raster_file):
    raster_data = _parse_iris_raster(
        read_iris_spectrograph_level2_fits(raster_file,
                                           uncertainty=False,
                                           memmap=True), 'iris')
    return raster_data
Example #7
0
from glue.app.qt.application import GlueApplication
from glue.core import Data, DataCollection
from glue.core.data_factories import load_data
from glue.plugins.wcs_autolinking.wcs_autolinking import wcs_autolink
from glue_solar.instruments.iris import _parse_iris_raster
from irispy.spectrograph import read_iris_spectrograph_level2_fits

from glue.viewers.image.qt import ImageViewer

# create some data
data_path = Path("/home/stuart/sunpy/data/iris_glue/")
rasters = list(data_path.glob("*raster*"))
sji = list(data_path.glob("*SJI*"))

raster_data = _parse_iris_raster(read_iris_spectrograph_level2_fits(rasters),
                                 'iris')
sji_data = []

for s in sji:
    sji_data += load_data(s)

dc = DataCollection(raster_data + sji_data)
ga = GlueApplication(dc)

im1 = ga.new_data_viewer(ImageViewer)
im1.add_data(raster_data[0])

im2 = ga.new_data_viewer(ImageViewer)
im2.add_data(sji_data[0])