CityScope / CSL_HCMC

Repository for the CityScope project related to Ho Chi Minh City Collaboration
6 stars 12 forks source link

Triggering of 3 static scenarios #30

Open doorleyr opened 3 years ago

doorleyr commented 3 years ago

For the physical table demo in the summer, we will have 3 static scenarios (0,2 and 3). The hardware interactions need to trigger the scenarios to change. This requires updating the following on each view:

The heatmaps, indicators and mobility visualisations for the three scenarios are now calculated in a Jupyter notebook here. This notebook can be run for each scenario in turn by changing the 's' parameter to 0, 2 or 3.

This notebook saves the following results for display on the CityScope table into the scenarios/results/scenario_[s] folder:

It also saves some of the results in alternative formats:

I've also created kepler.gl visualisations as html files in the scenario/results folder to show a preview of how the results should look on the table. The access heatmap defaults to Employment but can be changed between different POIs using the Color property of the Access layer. The Scenario 0 Visualisation can also be viewed here.

@Hai-Hoang-88 can you and your team (i) look through the new Jupyter notebook and make sure everything makes sense to you (I can also do a technical Zoom call to explain anything which is not clear) and (ii) coordinate with the front-end and hardware teams to ensure that the analysis results can be triggered by the hardware interactions.

n-h-tuan commented 3 years ago

Hi @doorleyr I am Tuan and in charge of JS. Could you give me the way you convert the GIS data into GRID to commit on CityIO? Cause I am not familiar with GIS data (.shp, .sbx, ....). Thank you so much.

doorleyr commented 3 years ago

Hi @nguyenledly this can be done in python with geopandas. I created a script to do this and saved the results: in the scenarios/results folder. https://github.com/CityScope/CSL_HCMC/blob/main/scenarios/lu_to_geogrids.ipynb

The parameters of the grid (position, rotation, cell size etc.) were set based on analysis done in this notebook: https://github.com/CityScope/CSL_HCMC/blob/main/data_analysis/geogrid_parameters.ipynb

However, specifically for the physical table with static scenarios, there will be no live modules (only pre-computed results) so it may be possible to continue to use the more detailed polygons as the GEOGRID in your front-end. You just need to figure out how to update all the relevant layers each time the hardware triggers a new scenario.

For the interactive CityScope models we do need to use an actual grid because the modules will be analyzing the table in real time and can only do this with gridded data.

n-h-tuan commented 3 years ago

Thank you @doorleyr , I will take a look on that. About updating relevant layers each time the hardware triggers a new scenario. I have done that and in testing process to make sure everything work fine.