handled display of data

This commit is contained in:
lrdossan 2024-06-12 15:51:21 +02:00
parent eb0f5cc881
commit a11a559710
7 changed files with 13 additions and 16 deletions

View file

@ -193,7 +193,7 @@ class ConcentrationModel(BaseRequestHandler):
)
# Re-generate the report with the conditional probability of infection plot
if self.get_cookie('conditional_plot'):
form.conditional_probability_plot = True if self.get_cookie('conditional_plot') == '1' else False
form.conditional_probability_viral_loads = True if self.get_cookie('conditional_plot') == '1' else False
self.clear_cookie('conditional_plot') # Clears cookie after changing the form value.
report_task = executor.submit(

View file

@ -15,7 +15,6 @@ DEFAULTS = {
'precise_activity': '{}',
'calculator_version': NO_DEFAULT,
'ceiling_height': 0.,
'conditional_probability_plot': False,
'conditional_probability_viral_loads': False,
'CO2_fitting_result': '{}',
'exposed_coffee_break_option': 'coffee_break_0',

View file

@ -31,7 +31,6 @@ class VirusFormData(FormData):
arve_sensors_option: bool
precise_activity: dict
ceiling_height: float
conditional_probability_plot: bool
conditional_probability_viral_loads: bool
CO2_fitting_result: dict
floor_area: float
@ -497,7 +496,6 @@ def baseline_raw_form_data() -> typing.Dict[str, typing.Union[str, float]]:
'air_changes': '',
'air_supply': '',
'ceiling_height': '',
'conditional_probability_plot': '0',
'conditional_probability_viral_loads': '0',
'exposed_coffee_break_option': 'coffee_break_4',
'exposed_coffee_duration': '10',

View file

@ -234,7 +234,7 @@ def conditional_prob_inf_given_vl_dist(
upper_percentiles = []
for vl_log in viral_loads:
# Viral load corresponding to a certain viral load value in the distribution
# Probability of infection corresponding to a certain viral load value in the distribution
specific_prob = infection_probability[np.where((vl_log-step/2-specific_vl)*(vl_log+step/2-specific_vl)<0)[0]] #type: ignore
pi_means.append(specific_prob.mean())
@ -246,7 +246,7 @@ def conditional_prob_inf_given_vl_dist(
def manufacture_conditional_probability_data(
exposure_model: models.ExposureModel,
infection_probability: models._VectorisedFloat,
infection_probability: models._VectorisedFloat
):
min_vl = 2
max_vl = 10

View file

@ -1,6 +1,6 @@
function on_report_load(conditional_probability_plot) {
function on_report_load(conditional_probability_viral_loads) {
// Check/uncheck uncertainties image generation
document.getElementById('conditional_probability_plot').checked = conditional_probability_plot
document.getElementById('conditional_probability_viral_loads').checked = conditional_probability_viral_loads
}
/* Generate the concentration plot using d3 library. */
@ -1164,14 +1164,14 @@ function display_rename_column(bool, id) {
else document.getElementById(id).style.display = 'none';
}
function conditional_probability_plot(value, is_generated) {
function conditional_probability_viral_loads(value, is_generated) {
// If the image was previously generated, there is no need to reload the page.
if (value && is_generated == 1) {
document.getElementById('conditional_probability_div').style.display = 'block'
}
else if (value && is_generated == 0) {
document.getElementById('label_conditional_probability_plot').innerHTML = `<span id="loading_spinner" class="spinner-border spinner-border-sm mr-2 mt-0" role="status" aria-hidden="true"></span>Loading...`;
document.getElementById('conditional_probability_plot').setAttribute('disabled', true);
document.getElementById('label_conditional_probability_viral_loads').innerHTML = `<span id="loading_spinner" class="spinner-border spinner-border-sm mr-2 mt-0" role="status" aria-hidden="true"></span>Loading...`;
document.getElementById('conditional_probability_viral_loads').setAttribute('disabled', true);
document.cookie = `conditional_plot= 1; path=/`;
window.location.reload();
}

View file

@ -495,7 +495,7 @@
</div>
<div class="form-check d-none">
<input type="checkbox" id="conditional_probability_plot" class="tabbed form-check-input" name="conditional_probability_plot" value="0" disabled>
<input type="checkbox" id="conditional_probability_viral_loads" class="tabbed form-check-input" name="conditional_probability_viral_loads" value="0" disabled>
</div>
<span id="training_limit_error" class="red_text" hidden>Conference/Training activities limited to 1 infected<br></span>

View file

@ -15,7 +15,7 @@
</head>
<body id="body" onload="on_report_load({{ form.conditional_probability_plot | int }})">
<body id="body" onload="on_report_load({{ form.conditional_probability_viral_loads | int }})">
<!-- MODEL REPR - Available in the developer tools once the report is generated. Useful to re-create the model using an interpreter that has CAiMIRA installed:
@ -216,11 +216,11 @@
<br>
{% if model.data_registry.virological_data['virus_distributions'][form.virus_type]['viral_load_in_sputum'] == 'Ref: Viral load - covid_overal_vl_data' %}
<div class="form-check">
<input type="checkbox" id="conditional_probability_plot" class="tabbed form-check-input" name="conditional_probability_plot" value="1" onClick="conditional_probability_plot(this.checked, {{ form.conditional_probability_plot | int }});">
<label id="label_conditional_probability_plot" for="conditional_probability_plot" class="form-check-label col-sm-12">Generate full uncertainty data (as function of the viral load)</label>
<input type="checkbox" id="conditional_probability_viral_loads" class="tabbed form-check-input" name="conditional_probability_viral_loads" value="1" onClick="conditional_probability_viral_loads(this.checked, {{ form.conditional_probability_viral_loads | int }});">
<label id="label_conditional_probability_viral_loads" for="conditional_probability_viral_loads" class="form-check-label col-sm-12">Generate full uncertainty data (as function of the viral load)</label>
</div>
{% endif %}
{% if form.conditional_probability_plot %}
{% if form.conditional_probability_viral_loads %}
<div id="conditional_probability_div">
<img src= "{{ uncertainties_plot_src }}" />
<div class="ml-5">