QGIS plugin to drive the OpenQuake Engine, to develop Social Vulnerability and Integrated Risk composite indices, and to predict building recovery times following an earthquake
In the attached calculation, if the user pulses the button for Show that corresponds to the Aggregated Risk Curves output, the plug-in fails with the following message:
Traceback (most recent call last): File "C:\Users/acalderon/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\svir\dialogs\drive_oq_engine_server_dialog.py", line 974, in self.on_output_action_btn_clicked( File "C:\Users/acalderon/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\svir\dialogs\drive_oq_engine_server_dialog.py", line 987, in on_output_action_btn_clicked self.viewer_dock.load_no_map_output( File "C:\Users/acalderon/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\svir\dialogs\viewer_dock.py", line 737, in load_no_map_output self.load_agg_curves(calc_id, session, hostname, output_type) File "C:\Users/acalderon/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\svir\dialogs\viewer_dock.py", line 921, in load_agg_curves tag_values = self.tags[tag_name]['values'].keys() TypeError: unhashable type: 'list'
OQ version 3.16.0
Plug-in version 3.15.2
QGIS version 3.22
Intended Behavior
Before this button would plot in the OpenQuake Data Viewer the total loss exceedance curve for any risk metric (structuralnon-structuraloccupants) in Absolute or Relative terms. If the user set the parameter individual_curves = True in the job.ini, the button would plot the individual curves corresponding to each of the realizations of the hazard logic_tree (see the image provided).
Issue
In the attached calculation, if the user pulses the button for
Show
that corresponds to theAggregated Risk Curves
output, the plug-in fails with the following message:Traceback (most recent call last): File "C:\Users/acalderon/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\svir\dialogs\drive_oq_engine_server_dialog.py", line 974, in self.on_output_action_btn_clicked( File "C:\Users/acalderon/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\svir\dialogs\drive_oq_engine_server_dialog.py", line 987, in on_output_action_btn_clicked self.viewer_dock.load_no_map_output( File "C:\Users/acalderon/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\svir\dialogs\viewer_dock.py", line 737, in load_no_map_output self.load_agg_curves(calc_id, session, hostname, output_type) File "C:\Users/acalderon/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\svir\dialogs\viewer_dock.py", line 921, in load_agg_curves tag_values = self.tags[tag_name]['values'].keys() TypeError: unhashable type: 'list'
OQ version 3.16.0 Plug-in version 3.15.2 QGIS version 3.22
Intended Behavior
Before this button would plot in the
OpenQuake Data Viewer
the total loss exceedance curve for any risk metric (structural
non-structural
occupants
) inAbsolute
orRelative
terms. If the user set the parameterindividual_curves = True
in the job.ini, the button would plot the individual curves corresponding to each of the realizations of the hazard logic_tree (see the image provided).How to replicate the error:![error1](https://user-images.githubusercontent.com/43442706/216943307-d53a56ac-4089-4119-900d-ae61f579cfd3.png)
Full traceback:![trace_back](https://user-images.githubusercontent.com/43442706/216943324-d2c7f4a2-c291-4766-a269-2b070b44ca31.png)
Intended Behavior:![intended_behavior](https://user-images.githubusercontent.com/43442706/216943342-e8d54092-5d39-4770-ab6c-84d913f05de6.png)
event_based_risk.zip