Source code for eoio.readers.subset.wavelength_subset
"""
Future notes:
indices_wav never none, if data is empty [] the indices_way []. but not None
ds["wavelength"].size returns scalar value
np.arange() create evenly sample index array with step = 1
np.arrange(3) -> [0, 1, 2]
ds["wavelength"].size returns tuple(2, 7) # do a check it is a scalar raise NotImplemented
np.arrange(2, 7) -> [2, 3, 4, 5, 6]
Is ds['wavelength] always 1D? # to make sense it should be either already idx list or it should be number of the wavelenghts
Create for 2D
"""
from __future__ import annotations
from typing import Any, Dict
from eoio.readers.subset.base_subset import BaseSubsetResolver
__all__ = ["WavelengthSubsetResolver"]
# -----------------------------------------------------------------------------------
[docs]
class WavelengthSubsetResolver(BaseSubsetResolver):
"""
Resolves wavelength indices for subsetting raster data.
:param data:
Wavelength data (e.g., xarray DataArray).
Data is expected to be an xarray-like object with .values, .size, and .dims.
:param wavelength_params:
Dictionary specifying wavelength selection criteria:
* {'min': 200}
* {'max': 600}
* {'nearest': 450, 'tolerance': 20}
* {'min': 200, 'max': 600}
:returns WavelengthSubsetResolver:
An instance ready to compute wavelength subsets.
"""
def __init__(
self,
data: Any,
variable_params: Dict,
):
super().__init__(data, variable_params)
if __name__ == "__main__":
pass