Update app.py
Browse files
app.py
CHANGED
@@ -219,6 +219,23 @@ def add_indices(image, nir_band, red_band, blue_band):
|
|
219 |
)
|
220 |
return image.addBands([neg_cloud, ndvi, evi, evi2])
|
221 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
222 |
|
223 |
def process_date(daterange, satellite, veg_indices):
|
224 |
start_date, end_date = daterange
|
@@ -524,6 +541,9 @@ if "result" in st.session_state:
|
|
524 |
raise ValueError(f"Unknown satellite: {satellite}")
|
525 |
|
526 |
if veg_index=='NDVI':
|
|
|
|
|
|
|
527 |
m.add_legend(title="NDVI Class/Value",
|
528 |
legend_dict={'<0:Waterbody': '#0000FF',
|
529 |
'0-0.1: Open': '#FF0000',
|
|
|
219 |
)
|
220 |
return image.addBands([neg_cloud, ndvi, evi, evi2])
|
221 |
|
222 |
+
def get_histogram(image, geometry, bins):
|
223 |
+
# Get image values as a list
|
224 |
+
values = image.reduceRegion(
|
225 |
+
reducer=ee.Reducer.toList(),
|
226 |
+
geometry=geometry,
|
227 |
+
scale=10,
|
228 |
+
maxPixels=1e13
|
229 |
+
).get('NDVI')
|
230 |
+
|
231 |
+
# Convert values to a NumPy array
|
232 |
+
values_array = np.array(values.getInfo())
|
233 |
+
|
234 |
+
# Compute the histogram on bins
|
235 |
+
hist, bin_edges = np.histogram(values_array, bins=bins)
|
236 |
+
|
237 |
+
return hist, bin_edges
|
238 |
+
|
239 |
|
240 |
def process_date(daterange, satellite, veg_indices):
|
241 |
start_date, end_date = daterange
|
|
|
541 |
raise ValueError(f"Unknown satellite: {satellite}")
|
542 |
|
543 |
if veg_index=='NDVI':
|
544 |
+
bins=[0, 0.1, 0.2, 0.3, 0.4, 0.5]
|
545 |
+
histogram, bin_edges = get_histogram(mosaic.select(veg_index), ee_geometry, bins)
|
546 |
+
print(histogram, bin_edges, bins)
|
547 |
m.add_legend(title="NDVI Class/Value",
|
548 |
legend_dict={'<0:Waterbody': '#0000FF',
|
549 |
'0-0.1: Open': '#FF0000',
|