Skip to content

Commit 1786738

Browse files
author
Emma Ai
committed
make output band name an option for landcover final
1 parent 948cf29 commit 1786738

File tree

2 files changed

+4
-10
lines changed

2 files changed

+4
-10
lines changed

odc/stats/plugins/lc_level34.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
Plugin of Module A3 in LandCover PipeLine
33
"""
44

5-
from typing import Tuple, Optional, List
5+
from typing import Optional, List
66

77
import numpy as np
88
import xarray as xr
@@ -55,11 +55,6 @@ def __init__(
5555
water_seasonality_threshold if water_seasonality_threshold else 3
5656
)
5757

58-
@property
59-
def measurements(self) -> Tuple[str, ...]:
60-
_measurements = ["level3", "level4"]
61-
return _measurements
62-
6358
def fuser(self, xx):
6459
return xx
6560

@@ -111,10 +106,9 @@ def reduce(self, xx: xr.Dataset) -> xr.Dataset:
111106
attrs = xx.attrs.copy()
112107
attrs["nodata"] = NODATA
113108
dims = xx.classes_l3_l4.dims[1:]
114-
115109
data_vars = {
116-
"level3": xr.DataArray(level3.squeeze(), dims=dims, attrs=attrs),
117-
"level4": xr.DataArray(level4.squeeze(), dims=dims, attrs=attrs),
110+
k: xr.DataArray(v, dims=dims, attrs=attrs)
111+
for k, v in zip(self.measurements, [level3.squeeze(), level4.squeeze()])
118112
}
119113

120114
coords = dict((dim, xx.coords[dim]) for dim in dims)

tests/test_lc_l34.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ def test_l4_classes(image_groups):
152152
expected_l3 = [[216, 216, 215], [216, 216, 216], [215, 215, 215], [215, 215, 215]]
153153

154154
expected_l4 = [[95, 97, 93], [97, 96, 96], [93, 93, 93], [93, 93, 93]]
155-
stats_l4 = StatsLccsLevel4()
155+
stats_l4 = StatsLccsLevel4(measurements=["level3", "level4"])
156156
ds = stats_l4.reduce(image_groups)
157157

158158
assert (ds.level3.compute() == expected_l3).all()

0 commit comments

Comments
 (0)