Reduction of swath data ======================= Given a swath and a cartesian grid or grid lons and lats, pyresample can reduce the swath data to only the relevant part covering the grid area. The reduction is coarse in order not to risk removing relevant data. From **data_reduce** the function **swath_from_lonlat_grid** can be used to reduce the swath data set to the area covering the lon lat grid .. doctest:: >>> import numpy as np >>> from pyresample import geometry, data_reduce >>> area_def = geometry.AreaDefinition('areaD', 'Europe (3km, HRV, VTC)', 'areaD', ... {'a': '6378144.0', 'b': '6356759.0', ... 'lat_0': '50.00', 'lat_ts': '50.00', ... 'lon_0': '8.00', 'proj': 'stere'}, ... 800, 800, ... [-1370912.72, -909968.64, ... 1029087.28, 1490031.36]) >>> data = np.fromfunction(lambda y, x: y*x, (50, 10)) >>> lons = np.fromfunction(lambda y, x: 3 + x, (50, 10)) >>> lats = np.fromfunction(lambda y, x: 75 - y, (50, 10)) >>> grid_lons, grid_lats = area_def.get_lonlats() >>> reduced_lons, reduced_lats, reduced_data = \ ... data_reduce.swath_from_lonlat_grid(grid_lons, grid_lats, ... lons, lats, data, ... radius_of_influence=3000) **radius_of_influence** is used to calculate a buffer zone around the grid where swath data points are not reduced. The function **get_valid_index_from_lonlat_grid** returns a boolean array of same size as the swath indicating the relevant swath data points compared to the grid .. doctest:: >>> import numpy as np >>> from pyresample import geometry, data_reduce >>> area_def = geometry.AreaDefinition('areaD', 'Europe (3km, HRV, VTC)', 'areaD', ... {'a': '6378144.0', 'b': '6356759.0', ... 'lat_0': '50.00', 'lat_ts': '50.00', ... 'lon_0': '8.00', 'proj': 'stere'}, ... 800, 800, ... [-1370912.72, -909968.64, ... 1029087.28, 1490031.36]) >>> data = np.fromfunction(lambda y, x: y*x, (50, 10)) >>> lons = np.fromfunction(lambda y, x: 3 + x, (50, 10)) >>> lats = np.fromfunction(lambda y, x: 75 - y, (50, 10)) >>> grid_lons, grid_lats = area_def.get_lonlats() >>> valid_index = data_reduce.get_valid_index_from_lonlat_grid(grid_lons, grid_lats, ... lons, lats, ... radius_of_influence=3000)