danielle-losos commited on
Commit
8d53210
·
verified ·
1 Parent(s): fcaa928

Update pages/05_GOES_NBR.py

Browse files
Files changed (1) hide show
  1. pages/05_GOES_NBR.py +57 -15
pages/05_GOES_NBR.py CHANGED
@@ -2,11 +2,9 @@ import ee
2
  import geemap
3
  import solara
4
 
5
- # Initialize the Earth Engine client library
6
- #ee.Initialize()
7
-
8
  fireList = ["North Complex", "Dixie", "Cameron Peak", "August Complex"]
9
  four_fires = solara.reactive([fireList[0]])
 
10
 
11
 
12
  class Map(geemap.Map):
@@ -15,11 +13,20 @@ class Map(geemap.Map):
15
  self.add_ee_data()
16
  self.add_plot_gui()
17
 
18
- def add_ee_data(self):
19
- # Define the coordinates of the bounding box
20
- #bbox_coords = [[-121.616097, 39.426723], [-120.668526, 39.426723], [-120.668526, 40.030845], [-121.616097, 40.030845]]
21
- #NorthComplexBB = ee.Geometry.Polygon(bbox_coords)
 
 
 
 
 
 
 
 
22
 
 
23
  # Create a bounding box geometry
24
  NorthComplexBB = ee.Geometry.BBox(-121.616097, 39.426723, -120.668526, 40.030845)
25
 
@@ -29,13 +36,34 @@ class Map(geemap.Map):
29
  postNBR = POSTgoesCMI.select(['CMI_C03','CMI_C06']).normalizedDifference(['CMI_C03', 'CMI_C06']).toFloat().rename('NBR');
30
  dNBR = preNBR.subtract(postNBR).select('NBR')
31
  dNBRclipped = dNBR.clip(NorthComplexBB)
 
 
32
 
33
- dNBRvisParams = {
34
- 'min': 0.0,
35
- 'max': 0.8,
36
- 'palette': ['green', 'yellow','orange','red']}
37
-
38
- self.addLayer(dNBRclipped, dNBRvisParams, "GOES dNBR")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
 
40
  @solara.component
41
  def Page():
@@ -43,9 +71,23 @@ def Page():
43
  solara.Markdown(f"**Selected**: {four_fires.value}")
44
 
45
  with solara.Column(style={"min-width": "500px"}):
46
- Map.element(
47
  center=[40, -100],
48
- zoom=5,
49
  height="600px",
50
  )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
51
 
 
2
  import geemap
3
  import solara
4
 
 
 
 
5
  fireList = ["North Complex", "Dixie", "Cameron Peak", "August Complex"]
6
  four_fires = solara.reactive([fireList[0]])
7
+ dNBRvisParams = {'min': 0.0,'max': 0.8, 'palette': ['green', 'yellow','orange','red']}
8
 
9
 
10
  class Map(geemap.Map):
 
13
  self.add_ee_data()
14
  self.add_plot_gui()
15
 
16
+ def add_ee_data(map_widget): #self
17
+ # Create a bounding box geometry
18
+ NorthComplexBB = ee.Geometry.BBox(-121.616097, 39.426723, -120.668526, 40.030845)
19
+
20
+ PREgoesCMI = ee.ImageCollection('NOAA/GOES/17/MCMIPF').filter(ee.Filter.date('2020-08-15', '2020-08-16')).mean()
21
+ POSTgoesCMI = ee.ImageCollection('NOAA/GOES/17/MCMIPF').filter(ee.Filter.date('2020-09-15', '2020-09-16')).mean()
22
+ preNBR = PREgoesCMI.select(['CMI_C03','CMI_C06']).normalizedDifference(['CMI_C03', 'CMI_C06']).toFloat().rename('NBR');
23
+ postNBR = POSTgoesCMI.select(['CMI_C03','CMI_C06']).normalizedDifference(['CMI_C03', 'CMI_C06']).toFloat().rename('NBR');
24
+ dNBR = preNBR.subtract(postNBR).select('NBR')
25
+ dNBRclipped = dNBR.clip(NorthComplexBB)
26
+ #self.addLayer(dNBRclipped, dNBRvisParams, "GOES dNBR")
27
+ map_widget.addLayer(dNBR, dNBRvisParams, "GOES dNBR - North Complex")
28
 
29
+ def add_Dixie_data(map_widget):
30
  # Create a bounding box geometry
31
  NorthComplexBB = ee.Geometry.BBox(-121.616097, 39.426723, -120.668526, 40.030845)
32
 
 
36
  postNBR = POSTgoesCMI.select(['CMI_C03','CMI_C06']).normalizedDifference(['CMI_C03', 'CMI_C06']).toFloat().rename('NBR');
37
  dNBR = preNBR.subtract(postNBR).select('NBR')
38
  dNBRclipped = dNBR.clip(NorthComplexBB)
39
+ #self.addLayer(dNBRclipped, dNBRvisParams, "GOES dNBR")
40
+ map_widget.addLayer(dNBR, dNBRvisParams, "GOES dNBR - North Complex")
41
 
42
+ def add_Cameron_Peak_data(map_widget):
43
+ # Create a bounding box geometry
44
+ NorthComplexBB = ee.Geometry.BBox(-121.616097, 39.426723, -120.668526, 40.030845)
45
+
46
+ PREgoesCMI = ee.ImageCollection('NOAA/GOES/17/MCMIPF').filter(ee.Filter.date('2020-08-15', '2020-08-16')).mean()
47
+ POSTgoesCMI = ee.ImageCollection('NOAA/GOES/17/MCMIPF').filter(ee.Filter.date('2020-09-15', '2020-09-16')).mean()
48
+ preNBR = PREgoesCMI.select(['CMI_C03','CMI_C06']).normalizedDifference(['CMI_C03', 'CMI_C06']).toFloat().rename('NBR');
49
+ postNBR = POSTgoesCMI.select(['CMI_C03','CMI_C06']).normalizedDifference(['CMI_C03', 'CMI_C06']).toFloat().rename('NBR');
50
+ dNBR = preNBR.subtract(postNBR).select('NBR')
51
+ dNBRclipped = dNBR.clip(NorthComplexBB)
52
+ #self.addLayer(dNBRclipped, dNBRvisParams, "GOES dNBR")
53
+ map_widget.addLayer(dNBR, dNBRvisParams, "GOES dNBR - North Complex")
54
+
55
+ def add_August_Complex_data(map_widget):
56
+ # Create a bounding box geometry
57
+ NorthComplexBB = ee.Geometry.BBox(-121.616097, 39.426723, -120.668526, 40.030845)
58
+
59
+ PREgoesCMI = ee.ImageCollection('NOAA/GOES/17/MCMIPF').filter(ee.Filter.date('2020-08-15', '2020-08-16')).mean()
60
+ POSTgoesCMI = ee.ImageCollection('NOAA/GOES/17/MCMIPF').filter(ee.Filter.date('2020-09-15', '2020-09-16')).mean()
61
+ preNBR = PREgoesCMI.select(['CMI_C03','CMI_C06']).normalizedDifference(['CMI_C03', 'CMI_C06']).toFloat().rename('NBR');
62
+ postNBR = POSTgoesCMI.select(['CMI_C03','CMI_C06']).normalizedDifference(['CMI_C03', 'CMI_C06']).toFloat().rename('NBR');
63
+ dNBR = preNBR.subtract(postNBR).select('NBR')
64
+ dNBRclipped = dNBR.clip(NorthComplexBB)
65
+ #self.addLayer(dNBRclipped, dNBRvisParams, "GOES dNBR")
66
+ map_widget.addLayer(dNBR, dNBRvisParams, "GOES dNBR - North Complex")
67
 
68
  @solara.component
69
  def Page():
 
71
  solara.Markdown(f"**Selected**: {four_fires.value}")
72
 
73
  with solara.Column(style={"min-width": "500px"}):
74
+ map_widget = Map.element(
75
  center=[40, -100],
76
+ zoom=4,
77
  height="600px",
78
  )
79
+
80
+ def update_map(change):
81
+ selected_fire = change["new"]
82
+ map_widget.clear_layers()
83
+ if selected_fire == "North Complex":
84
+ add_North_Complex_data(map_widget)
85
+ elif selected_fire == "Dixie":
86
+ add_Dixie_data(map_widget)
87
+ elif selected_fire == "Cameron Peak":
88
+ add_Cameron_Peak_data(map_widget)
89
+ elif selected_fire == "August Complex":
90
+ add_August_Complex_data(map_widget)
91
+
92
+ four_fires.observe(update_map, names="value")
93