RoyAalekh commited on
Commit
6f273f9
·
verified ·
1 Parent(s): e0fbbad

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -3
app.py CHANGED
@@ -16,12 +16,16 @@ def load_timeseries_data(start_date, end_date):
16
  start_date_str = pd.to_datetime(start_date).strftime('%Y-%m-%d')
17
  end_date_str = (pd.to_datetime(start_date) + pd.offsets.MonthEnd()).strftime('%Y-%m-%d')
18
  file_name = f"enel_timeseries_data_{start_date_str}_{end_date_str}.csv"
 
 
19
  return pd.read_csv(file_name, index_col=0, header=[0, 1, 2], parse_dates=True)
20
 
21
  def load_other_features_data(start_date, end_date):
22
  start_date_str = pd.to_datetime(start_date).strftime('%Y-%m-%d')
23
  end_date_str = (pd.to_datetime(start_date) + pd.offsets.MonthEnd()).strftime('%Y-%m-%d')
24
  file_name = f"enel_other_features_data_{start_date_str}_{end_date_str}.csv"
 
 
25
  return pd.read_csv(file_name, index_col=0, header=0, parse_dates=True)
26
 
27
  # Define the start and end dates
@@ -32,6 +36,13 @@ kpi_data = pd.read_csv(
32
  r"kpi_data.csv", index_col=0, header=0, parse_dates=True
33
  )
34
 
 
 
 
 
 
 
 
35
  # Initialize Panel extension
36
  pn.extension("plotly")
37
 
@@ -40,7 +51,7 @@ date_range_picker = pn.widgets.DateRangePicker(
40
  name='Date Range',
41
  start=start_date,
42
  end=end_date,
43
- value=(start_date, start_date + pd.DateOffset(months=1).date())
44
  )
45
 
46
  inverter_ids = pn.widgets.MultiSelect(
@@ -61,7 +72,7 @@ heatmap_voltage = pn.widgets.Checkbox(name="Heat Map - Voltage", value=False)
61
  heatmap_power = pn.widgets.Checkbox(name="Heat Map - Power", value=False)
62
  heatmap_irradiance = pn.widgets.Checkbox(name="Heat Map - Irradiance", value=False)
63
  heatmap_temperature = pn.widgets.Checkbox(
64
- name="Heat Map - Temperature " "Heatsink", value=False
65
  )
66
 
67
  # Create a loading spinner
@@ -161,7 +172,7 @@ def update_heatmap_irradiance(heatmap_irradiance):
161
  if heatmap_irradiance:
162
  irradiance_df = daily_timeseries_data.filter(like="G")
163
  irradiance_df.columns = [i.split("-")[1] for i in irradiance_df.columns]
164
- irradiance_heatmap = create_heatmap(irradiance_df, "Irradiance " "Heatmap")
165
  return pn.Row(irradiance_heatmap)
166
  return pn.pane.Markdown("")
167
 
@@ -179,6 +190,7 @@ def update_heatmap_temperature(heatmap_temperature):
179
  # Create dashboard layout
180
  dashboard = pn.Column(
181
  "# ENEL Dashboard",
 
182
  # IV Plots
183
  pn.Row(
184
  pn.Column(inverter_ids, plot_power_curves, plot_temperature_curves),
 
16
  start_date_str = pd.to_datetime(start_date).strftime('%Y-%m-%d')
17
  end_date_str = (pd.to_datetime(start_date) + pd.offsets.MonthEnd()).strftime('%Y-%m-%d')
18
  file_name = f"enel_timeseries_data_{start_date_str}_{end_date_str}.csv"
19
+ if not os.path.exists(file_name):
20
+ return None
21
  return pd.read_csv(file_name, index_col=0, header=[0, 1, 2], parse_dates=True)
22
 
23
  def load_other_features_data(start_date, end_date):
24
  start_date_str = pd.to_datetime(start_date).strftime('%Y-%m-%d')
25
  end_date_str = (pd.to_datetime(start_date) + pd.offsets.MonthEnd()).strftime('%Y-%m-%d')
26
  file_name = f"enel_other_features_data_{start_date_str}_{end_date_str}.csv"
27
+ if not os.path.exists(file_name):
28
+ return None
29
  return pd.read_csv(file_name, index_col=0, header=0, parse_dates=True)
30
 
31
  # Define the start and end dates
 
36
  r"kpi_data.csv", index_col=0, header=0, parse_dates=True
37
  )
38
 
39
+ daily_timeseries_data = pd.read_csv(
40
+ r"daily_aggregated_timeseries_data.csv",
41
+ index_col=0,
42
+ header=0,
43
+ parse_dates=True,
44
+ )
45
+
46
  # Initialize Panel extension
47
  pn.extension("plotly")
48
 
 
51
  name='Date Range',
52
  start=start_date,
53
  end=end_date,
54
+ value=(start_date, (start_date + pd.DateOffset(months=1)).date())
55
  )
56
 
57
  inverter_ids = pn.widgets.MultiSelect(
 
72
  heatmap_power = pn.widgets.Checkbox(name="Heat Map - Power", value=False)
73
  heatmap_irradiance = pn.widgets.Checkbox(name="Heat Map - Irradiance", value=False)
74
  heatmap_temperature = pn.widgets.Checkbox(
75
+ name="Heat Map - Temperature Heatsink", value=False
76
  )
77
 
78
  # Create a loading spinner
 
172
  if heatmap_irradiance:
173
  irradiance_df = daily_timeseries_data.filter(like="G")
174
  irradiance_df.columns = [i.split("-")[1] for i in irradiance_df.columns]
175
+ irradiance_heatmap = create_heatmap(irradiance_df, "Irradiance Heatmap")
176
  return pn.Row(irradiance_heatmap)
177
  return pn.pane.Markdown("")
178
 
 
190
  # Create dashboard layout
191
  dashboard = pn.Column(
192
  "# ENEL Dashboard",
193
+ date_range_picker,
194
  # IV Plots
195
  pn.Row(
196
  pn.Column(inverter_ids, plot_power_curves, plot_temperature_curves),