Skip to content

Commit

Permalink
Added custom wavelength parameter for recalib
Browse files Browse the repository at this point in the history
  • Loading branch information
domna committed Jul 23, 2021
1 parent 14a3345 commit d6070e3
Showing 1 changed file with 9 additions and 5 deletions.
14 changes: 9 additions & 5 deletions src/mapping/pl_mapping_hdf.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,20 @@ class Mapper:
mask = []
_is_interp = False

def _read_hdf5_file(self, fname, interpolate=False):
def _read_hdf5_file(self, fname, interpolate=False, custom_wavelength=None):
f = h5py.File(fname, 'r')

measurement_index = list(f.keys())[0]
x = list(filter(lambda x: x != 'Wavelength', f[measurement_index].keys()))
y = list(f['{:}/{:}'.format(measurement_index, x[0])].keys())
xm, ym = np.meshgrid(x, y, indexing='ij')

data = pd.DataFrame(index=pd.MultiIndex.from_arrays([xm.flatten(), ym.flatten()], names=['x', 'y']),
columns=f['{:}/Wavelength'.format(measurement_index)])
if custom_wavelength is None:
data = pd.DataFrame(index=pd.MultiIndex.from_arrays([xm.flatten(), ym.flatten()], names=['x', 'y']),
columns=f['{:}/Wavelength'.format(measurement_index)])
else:
data = pd.DataFrame(index=pd.MultiIndex.from_arrays([xm.flatten(), ym.flatten()], names=['x', 'y']),
columns=custom_wavelength)
data.columns.name = "Wavelength"

sensX = []
Expand All @@ -49,11 +53,11 @@ def _read_hdf5_file(self, fname, interpolate=False):

self.df = data

def __init__(self, fname, sx=None, dsx=None, interpolate=False):
def __init__(self, fname, sx=None, dsx=None, interpolate=False, custom_wavelength=None):
self.specx = sx
self.dspecx = dsx

self._read_hdf5_file(fname, interpolate)
self._read_hdf5_file(fname, interpolate, custom_wavelength)
self.df = self.df[~self.df.index.duplicated(keep='first')]
self.x, self.y = self.df.index[0]

Expand Down

0 comments on commit d6070e3

Please sign in to comment.