Spaces:
Runtime error
Runtime error
Commit
·
de6fbca
1
Parent(s):
bc436b6
Changed engine layout to be more compact
Browse files* The map is slightly larger.
* The execution panel on the left is narrower
* layer displayer on the bottom display 5 records by default
- tomorrowcities/pages/engine.py +11 -11
tomorrowcities/pages/engine.py
CHANGED
|
@@ -838,12 +838,12 @@ def LayerDisplayer():
|
|
| 838 |
#solara.CrossFilterReport(df_filtered, classes=["py-2"])
|
| 839 |
#solara.CrossFilterSelect(df_filtered, df_filtered.columns[0])
|
| 840 |
#solara.CrossFilterDataFrame(df=df_filtered)
|
| 841 |
-
solara.DataFrame(df_filtered)
|
| 842 |
else:
|
| 843 |
#solara.CrossFilterReport(data, classes=["py-2"])
|
| 844 |
#solara.CrossFilterSelect(data, data.columns[0])
|
| 845 |
#solara.CrossFilterDataFrame(df=data)
|
| 846 |
-
solara.DataFrame(data)
|
| 847 |
if selected == "building":
|
| 848 |
file_object = data.to_json()
|
| 849 |
with solara.FileDownload(file_object, "building_export.geojson", mime_type="application/geo+json"):
|
|
@@ -1054,7 +1054,6 @@ def ExecutePanel():
|
|
| 1054 |
buildings[metric] = list(df_metrics[metric][metric])
|
| 1055 |
layers.value['metrics'][metric]['value'] = computed_metrics[metric]['value']
|
| 1056 |
layers.value['metrics'][metric]['max_value'] = computed_metrics[metric]['max_value']
|
| 1057 |
-
|
| 1058 |
return buildings
|
| 1059 |
|
| 1060 |
if execute_counter > 0 :
|
|
@@ -1091,16 +1090,16 @@ def ExecutePanel():
|
|
| 1091 |
# Execute the thread only when the depencency is changed
|
| 1092 |
result = solara.use_thread(execute_engine, dependencies=[execute_counter])
|
| 1093 |
|
| 1094 |
-
with solara.GridFixed(columns=
|
| 1095 |
-
solara.Text("Infrastructure
|
| 1096 |
-
with solara.Row(justify="
|
| 1097 |
solara.ToggleButtonsMultiple(value=layers.value['infra'].value, on_value=layers.value['infra'].set, values=["building","power","road"])
|
| 1098 |
solara.Text("Hazard")
|
| 1099 |
-
with solara.Row(justify="
|
| 1100 |
solara.ToggleButtonsSingle(value=layers.value['hazard'].value, on_value=layers.value['hazard'].set, values=["earthquake","flood"])
|
| 1101 |
with solara.Tooltip("Building-level metrics will be increased by 25% and 50% for medium and low"):
|
| 1102 |
solara.Text("Implementation Capacity Score")
|
| 1103 |
-
with solara.Row(justify="
|
| 1104 |
solara.ToggleButtonsSingle(value=layers.value['implementation_capacity_score'].value,
|
| 1105 |
values=['low','medium','high'],
|
| 1106 |
on_value=layers.value['implementation_capacity_score'].set)
|
|
@@ -1182,9 +1181,9 @@ def MapInfo():
|
|
| 1182 |
|
| 1183 |
@solara.component
|
| 1184 |
def WebApp():
|
| 1185 |
-
with solara.Columns([
|
| 1186 |
with solara.Column():
|
| 1187 |
-
with solara.Columns([
|
| 1188 |
with solara.Column():
|
| 1189 |
solara.Markdown('[Download Sample Dataset](https://drive.google.com/file/d/1BGPZQ2IKJHY9ExOCCHcNNrCTioYZ8D1y/view?usp=sharing)')
|
| 1190 |
FileDropZone()
|
|
@@ -1192,7 +1191,8 @@ def WebApp():
|
|
| 1192 |
with solara.Column():
|
| 1193 |
LayerController()
|
| 1194 |
MapViewer()
|
| 1195 |
-
|
|
|
|
| 1196 |
LayerDisplayer()
|
| 1197 |
MapInfo()
|
| 1198 |
|
|
|
|
| 838 |
#solara.CrossFilterReport(df_filtered, classes=["py-2"])
|
| 839 |
#solara.CrossFilterSelect(df_filtered, df_filtered.columns[0])
|
| 840 |
#solara.CrossFilterDataFrame(df=df_filtered)
|
| 841 |
+
solara.DataFrame(df_filtered, items_per_page=5)
|
| 842 |
else:
|
| 843 |
#solara.CrossFilterReport(data, classes=["py-2"])
|
| 844 |
#solara.CrossFilterSelect(data, data.columns[0])
|
| 845 |
#solara.CrossFilterDataFrame(df=data)
|
| 846 |
+
solara.DataFrame(data, items_per_page=5)
|
| 847 |
if selected == "building":
|
| 848 |
file_object = data.to_json()
|
| 849 |
with solara.FileDownload(file_object, "building_export.geojson", mime_type="application/geo+json"):
|
|
|
|
| 1054 |
buildings[metric] = list(df_metrics[metric][metric])
|
| 1055 |
layers.value['metrics'][metric]['value'] = computed_metrics[metric]['value']
|
| 1056 |
layers.value['metrics'][metric]['max_value'] = computed_metrics[metric]['max_value']
|
|
|
|
| 1057 |
return buildings
|
| 1058 |
|
| 1059 |
if execute_counter > 0 :
|
|
|
|
| 1090 |
# Execute the thread only when the depencency is changed
|
| 1091 |
result = solara.use_thread(execute_engine, dependencies=[execute_counter])
|
| 1092 |
|
| 1093 |
+
with solara.GridFixed(columns=1):
|
| 1094 |
+
solara.Text("Infrastructure")
|
| 1095 |
+
with solara.Row(justify="left"):
|
| 1096 |
solara.ToggleButtonsMultiple(value=layers.value['infra'].value, on_value=layers.value['infra'].set, values=["building","power","road"])
|
| 1097 |
solara.Text("Hazard")
|
| 1098 |
+
with solara.Row(justify="left"):
|
| 1099 |
solara.ToggleButtonsSingle(value=layers.value['hazard'].value, on_value=layers.value['hazard'].set, values=["earthquake","flood"])
|
| 1100 |
with solara.Tooltip("Building-level metrics will be increased by 25% and 50% for medium and low"):
|
| 1101 |
solara.Text("Implementation Capacity Score")
|
| 1102 |
+
with solara.Row(justify="left"):
|
| 1103 |
solara.ToggleButtonsSingle(value=layers.value['implementation_capacity_score'].value,
|
| 1104 |
values=['low','medium','high'],
|
| 1105 |
on_value=layers.value['implementation_capacity_score'].set)
|
|
|
|
| 1181 |
|
| 1182 |
@solara.component
|
| 1183 |
def WebApp():
|
| 1184 |
+
with solara.Columns([88,12]):
|
| 1185 |
with solara.Column():
|
| 1186 |
+
with solara.Columns([20,80]):
|
| 1187 |
with solara.Column():
|
| 1188 |
solara.Markdown('[Download Sample Dataset](https://drive.google.com/file/d/1BGPZQ2IKJHY9ExOCCHcNNrCTioYZ8D1y/view?usp=sharing)')
|
| 1189 |
FileDropZone()
|
|
|
|
| 1191 |
with solara.Column():
|
| 1192 |
LayerController()
|
| 1193 |
MapViewer()
|
| 1194 |
+
with solara.Row(justify="center"):
|
| 1195 |
+
MetricPanel()
|
| 1196 |
LayerDisplayer()
|
| 1197 |
MapInfo()
|
| 1198 |
|