From e80fa1e4f91c76dcc1b39aad03f0e83f0960b8aa Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Fri, 22 Mar 2024 16:27:04 +0100 Subject: [PATCH] interactive_chart op twee plaatsen --- rowers/interactiveplots.py | 23 ++++++++++++++++++---- rowers/templates/instroke_interactive.html | 23 +++++++++++----------- 2 files changed, 31 insertions(+), 15 deletions(-) diff --git a/rowers/interactiveplots.py b/rowers/interactiveplots.py index fa637c32..cccd3486 100644 --- a/rowers/interactiveplots.py +++ b/rowers/interactiveplots.py @@ -3558,8 +3558,23 @@ def interactive_chart(id=0, promember=0, intervaldata={}): metrics_list = [{'name': name, 'rowingmetrics':d } for name, d in metrics.rowingmetrics] - print(intervaldata) - + + intervals = [] + # add shaded bar chart areas + if intervaldata != {}: + intervaldf = pd.DataFrame(intervaldata) + intervaldf['itime'] = intervaldf['itime']*1.e3 + intervaldf['time'] = intervaldf['itime'].cumsum() + intervaldf['time'] = intervaldf['time'].shift(1) + intervaldf.loc[0, 'time'] = 0 + intervaldf['time_r'] = intervaldf['time'] + intervaldf['itime'] + intervaldf['value'] = 100 + mask = intervaldf['itype'] == 3 + intervaldf.loc[mask, 'value'] = 0 + intervaldf['bottom'] = 0 + + intervals = intervaldf.to_dict("records") + chart_data = { 'title': row.name, 'x': "time", @@ -3567,9 +3582,9 @@ def interactive_chart(id=0, promember=0, intervaldata={}): 'y2': "spm", 'data': data_dict, 'metrics': metrics_list, - 'intervals': intervaldata, + 'intervals': intervals, } - + script, div = get_chart("/interactive", chart_data) return script, div diff --git a/rowers/templates/instroke_interactive.html b/rowers/templates/instroke_interactive.html index 6f3be39c..9c86fdb9 100644 --- a/rowers/templates/instroke_interactive.html +++ b/rowers/templates/instroke_interactive.html @@ -11,7 +11,6 @@ jQuery UI Slider - Range slider - @@ -30,11 +29,14 @@ dataType: 'json', success: function(data) { - console.log(data); - $("#id_script").replaceWith('
'+data.script+''); - $("#id_chart").replaceWith('
'+data.div+''); - $("#ds").replaceWith('
'+data.ds+''); - $("#dd").replaceWith('
'+data.dd+''); + $("#id_script").replaceWith('
'+data.script+''); + $("#id_chart").replaceWith('
'+data.div+''); + + + $("#dd").empty(); + $("#dd").html(data.dd); + $("#ds").empty(); + $('#ds').html(data.ds) } }); } @@ -169,11 +171,10 @@ $( function() { {{ the_div|safe }}
-
  • -
    - - {{ dd|safe }} - + +
  • +
    + {{ dd|safe }}
    {{ ds |safe }}