adding athlete names to analysis
This commit is contained in:
@@ -365,6 +365,9 @@ def interactive_boxchart(datadf, fieldname, extratitle='',
|
|||||||
plot.y_range = yrange1
|
plot.y_range = yrange1
|
||||||
plot.sizing_mode = 'stretch_both'
|
plot.sizing_mode = 'stretch_both'
|
||||||
|
|
||||||
|
if extratitle:
|
||||||
|
plot.title.text = extratitle
|
||||||
|
|
||||||
plot.xaxis.axis_label = 'Date'
|
plot.xaxis.axis_label = 'Date'
|
||||||
plot.yaxis.axis_label = axlabels[fieldname]
|
plot.yaxis.axis_label = axlabels[fieldname]
|
||||||
|
|
||||||
@@ -1970,6 +1973,7 @@ def performance_chart(user, startdate=None, enddate=None, kfitness=42, kfatigue=
|
|||||||
|
|
||||||
def interactive_histoall(theworkouts, histoparam, includereststrokes,
|
def interactive_histoall(theworkouts, histoparam, includereststrokes,
|
||||||
spmmin=0, spmmax=55,
|
spmmin=0, spmmax=55,
|
||||||
|
extratitle='',
|
||||||
workmin=0, workmax=1500):
|
workmin=0, workmax=1500):
|
||||||
TOOLS = 'save,pan,box_zoom,wheel_zoom,reset,tap,hover,crosshair'
|
TOOLS = 'save,pan,box_zoom,wheel_zoom,reset,tap,hover,crosshair'
|
||||||
|
|
||||||
@@ -2013,6 +2017,10 @@ def interactive_histoall(theworkouts, histoparam, includereststrokes,
|
|||||||
toolbar_location="above"
|
toolbar_location="above"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if extratitle:
|
||||||
|
plot.title.text = extratitle
|
||||||
|
|
||||||
|
|
||||||
# add watermark
|
# add watermark
|
||||||
watermarkurl = "/static/img/logo7.png"
|
watermarkurl = "/static/img/logo7.png"
|
||||||
watermarkrange = Range1d(start=0, end=1)
|
watermarkrange = Range1d(start=0, end=1)
|
||||||
@@ -4470,6 +4478,9 @@ def interactive_multiflex(datadf, xparam, yparam, groupby, extratitle='',
|
|||||||
gr=groupname,
|
gr=groupname,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if extratitle is not None:
|
||||||
|
title = title+' '+extratitle
|
||||||
|
|
||||||
if xparam == 'cumdist': # pragma: no cover
|
if xparam == 'cumdist': # pragma: no cover
|
||||||
res = make_cumvalues(datadf[xparam])
|
res = make_cumvalues(datadf[xparam])
|
||||||
datadf[xparam] = res[0]
|
datadf[xparam] = res[0]
|
||||||
@@ -4659,6 +4670,7 @@ def interactive_cum_flex_chart2(theworkouts, promember=0,
|
|||||||
yparam1='power',
|
yparam1='power',
|
||||||
yparam2='spm',
|
yparam2='spm',
|
||||||
workstrokesonly=False,
|
workstrokesonly=False,
|
||||||
|
extratitle='',
|
||||||
trendline=False):
|
trendline=False):
|
||||||
|
|
||||||
# datadf = dataprep.smalldataprep(theworkouts,xparam,yparam1,yparam2)
|
# datadf = dataprep.smalldataprep(theworkouts,xparam,yparam1,yparam2)
|
||||||
@@ -4789,6 +4801,10 @@ def interactive_cum_flex_chart2(theworkouts, promember=0,
|
|||||||
plot.extra_x_ranges = {"watermark": watermarkrange}
|
plot.extra_x_ranges = {"watermark": watermarkrange}
|
||||||
plot.sizing_mode = 'stretch_both'
|
plot.sizing_mode = 'stretch_both'
|
||||||
|
|
||||||
|
if extratitle:
|
||||||
|
plot.title.text = extratitle
|
||||||
|
|
||||||
|
|
||||||
plot.image_url([watermarkurl], watermarkx, watermarky,
|
plot.image_url([watermarkurl], watermarkx, watermarky,
|
||||||
watermarkw, watermarkh,
|
watermarkw, watermarkh,
|
||||||
global_alpha=watermarkalpha,
|
global_alpha=watermarkalpha,
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
{% if stats %}
|
{% if stats %}
|
||||||
<h2>Statistics</h2>
|
<h2>Statistics {{ extratitle }}</h2>
|
||||||
<table width="100%" class="listtable">
|
<table width="100%" class="listtable">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -70,7 +70,3 @@
|
|||||||
</table>
|
</table>
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -528,7 +528,7 @@
|
|||||||
<script>
|
<script>
|
||||||
$(function($) {
|
$(function($) {
|
||||||
console.log('loading script');
|
console.log('loading script');
|
||||||
$.getJSON(window.location.protocol + '//'+window.location.host + '/rowers/analysisdata/', function(json) {
|
$.getJSON(window.location.protocol + '//'+window.location.host + '/rowers/analysisdata/user/{{ rower.user.id }}', function(json) {
|
||||||
var counter=0;
|
var counter=0;
|
||||||
var script = json.script;
|
var script = json.script;
|
||||||
var div = json.div;
|
var div = json.div;
|
||||||
|
|||||||
@@ -419,6 +419,8 @@ urlpatterns = [
|
|||||||
re_path(r'^ote-bests2/user/(?P<userid>\d+)/$',
|
re_path(r'^ote-bests2/user/(?P<userid>\d+)/$',
|
||||||
views.rankings_view2, name='rankings_view2'),
|
views.rankings_view2, name='rankings_view2'),
|
||||||
re_path(r'^ote-bests2/$', views.rankings_view2, name='rankings_view2'),
|
re_path(r'^ote-bests2/$', views.rankings_view2, name='rankings_view2'),
|
||||||
|
re_path(r'^analysisdata/user/(?P<userid>\d+)/$', views.analysis_view_data,
|
||||||
|
name='analysis_view_data'),
|
||||||
re_path(r'^analysisdata/$', views.analysis_view_data,
|
re_path(r'^analysisdata/$', views.analysis_view_data,
|
||||||
name='analysis_view_data'),
|
name='analysis_view_data'),
|
||||||
re_path(r'^graph/(?P<id>\d+)/$',
|
re_path(r'^graph/(?P<id>\d+)/$',
|
||||||
|
|||||||
@@ -459,6 +459,7 @@ def trendflexdata(workouts, options, userid=0):
|
|||||||
u = User.objects.get(id=userid)
|
u = User.objects.get(id=userid)
|
||||||
extratitle = ' '+u.first_name+' '+u.last_name
|
extratitle = ' '+u.first_name+' '+u.last_name
|
||||||
|
|
||||||
|
|
||||||
script, div = interactive_multiflex(df, xparam, yparam,
|
script, div = interactive_multiflex(df, xparam, yparam,
|
||||||
groupby,
|
groupby,
|
||||||
extratitle=extratitle,
|
extratitle=extratitle,
|
||||||
@@ -484,10 +485,19 @@ def flexalldata(workouts, options):
|
|||||||
|
|
||||||
workstrokesonly = not includereststrokes
|
workstrokesonly = not includereststrokes
|
||||||
|
|
||||||
|
userid = options['userid']
|
||||||
|
|
||||||
|
if userid == 0: # pragma: no cover
|
||||||
|
extratitle = ''
|
||||||
|
else:
|
||||||
|
u = User.objects.get(id=userid)
|
||||||
|
extratitle = ' '+u.first_name+' '+u.last_name
|
||||||
|
|
||||||
res = interactive_cum_flex_chart2(workouts, xparam=xparam,
|
res = interactive_cum_flex_chart2(workouts, xparam=xparam,
|
||||||
yparam1=yparam1,
|
yparam1=yparam1,
|
||||||
yparam2=yparam2,
|
yparam2=yparam2,
|
||||||
promember=promember,
|
promember=promember,
|
||||||
|
extratitle=extratitle,
|
||||||
workstrokesonly=workstrokesonly,
|
workstrokesonly=workstrokesonly,
|
||||||
trendline=trendline,
|
trendline=trendline,
|
||||||
)
|
)
|
||||||
@@ -507,9 +517,18 @@ def histodata(workouts, options):
|
|||||||
spmmax = options['spmmax']
|
spmmax = options['spmmax']
|
||||||
workmin = options['workmin']
|
workmin = options['workmin']
|
||||||
workmax = options['workmax']
|
workmax = options['workmax']
|
||||||
|
userid = options['userid']
|
||||||
|
|
||||||
|
if userid == 0: # pragma: no cover
|
||||||
|
extratitle = ''
|
||||||
|
else:
|
||||||
|
u = User.objects.get(id=userid)
|
||||||
|
extratitle = ' '+u.first_name+' '+u.last_name
|
||||||
|
|
||||||
|
|
||||||
script, div = interactive_histoall(workouts, plotfield, includereststrokes,
|
script, div = interactive_histoall(workouts, plotfield, includereststrokes,
|
||||||
spmmin=spmmin, spmmax=spmmax,
|
spmmin=spmmin, spmmax=spmmax,
|
||||||
|
extratitle=extratitle,
|
||||||
workmin=workmin, workmax=workmax)
|
workmin=workmin, workmax=workmax)
|
||||||
|
|
||||||
scripta = script.split('\n')[2:-1]
|
scripta = script.split('\n')[2:-1]
|
||||||
@@ -675,6 +694,14 @@ def statsdata(workouts, options):
|
|||||||
includereststrokes = options['includereststrokes']
|
includereststrokes = options['includereststrokes']
|
||||||
ids = options['ids']
|
ids = options['ids']
|
||||||
|
|
||||||
|
userid = options['userid']
|
||||||
|
|
||||||
|
if userid == 0: # pragma: no cover
|
||||||
|
extratitle = ''
|
||||||
|
else:
|
||||||
|
u = User.objects.get(id=userid)
|
||||||
|
extratitle = ' '+u.first_name+' '+u.last_name
|
||||||
|
|
||||||
workstrokesonly = not includereststrokes
|
workstrokesonly = not includereststrokes
|
||||||
|
|
||||||
ids = [w.id for w in workouts]
|
ids = [w.id for w in workouts]
|
||||||
@@ -728,6 +755,7 @@ def statsdata(workouts, options):
|
|||||||
context = {
|
context = {
|
||||||
'stats': stats,
|
'stats': stats,
|
||||||
'cordict': cordict,
|
'cordict': cordict,
|
||||||
|
'extratitle': extratitle,
|
||||||
}
|
}
|
||||||
|
|
||||||
htmly = env.get_template('statsdiv.html')
|
htmly = env.get_template('statsdiv.html')
|
||||||
|
|||||||
Reference in New Issue
Block a user