Private
Public Access
1
0

Updated - flex chart only, only pace

This commit is contained in:
Sander Roosendaal
2020-11-04 08:36:50 +01:00
parent 2fc303a664
commit d0cf9c745e
3 changed files with 33 additions and 11 deletions

View File

@@ -85,7 +85,7 @@ import rowers.dataprep as dataprep
import rowers.metrics as metrics
import rowers.c2stuff as c2stuff
from rowers.metrics import axes,axlabels,yaxminima,yaxmaxima
from rowers.metrics import axes,axlabels,yaxminima,yaxmaxima,get_yaxminima,get_yaxmaxima
from rowers.utils import lbstoN
from rowers.datautils import p0
@@ -4418,7 +4418,8 @@ def interactive_flex_chart2(id,r,promember=0,
yparam1='pace',
yparam2='hr',
plottype='line',
workstrokesonly=False):
workstrokesonly=False,
mode='rower'):
watermarkurl = "/static/img/logo7.png"
watermarksource = ColumnDataSource(dict(
@@ -4535,8 +4536,8 @@ def interactive_flex_chart2(id,r,promember=0,
xaxmin = rowdata['x1'].min()
else:
try:
xaxmax = yaxmaxima[xparam]
xaxmin = yaxminima[xparam]
xaxmax = get_yaxmaxima(r,xparam,mode)
xaxmin = get_yaxminima(r,xparam,mode)
except KeyError:
xaxmax = rowdata['x1'].max()
xaxmin = rowdata['x1'].min()
@@ -4733,8 +4734,8 @@ def interactive_flex_chart2(id,r,promember=0,
try:
yrange1 = Range1d(start=yaxminima[yparam1],
end=yaxmaxima[yparam1])
yrange1 = Range1d(start=get_yaxminima(r,yparam1,mode),
end=get_yaxmaxima(r,yparam1,mode))
except KeyError:
yrange1 = Range1d(start=rowdata[yparam1].min(),
end=rowdata[yparam1].max())
@@ -4743,8 +4744,8 @@ def interactive_flex_chart2(id,r,promember=0,
if (xparam != 'time') and (xparam != 'distance') and (xparam != 'cumdist'):
try:
xrange1 = Range1d(start=yaxminima[xparam],
end=yaxmaxima[xparam])
xrange1 = Range1d(start=get_yaxminima(r,xparam,mode),
end=get_yaxmaxima(r,xparam,mode))
except KeyError:
xrange1 = Range1d(start=rowdata[xparam].min(),
end=rowdata[xparam].max())
@@ -4773,8 +4774,8 @@ def interactive_flex_chart2(id,r,promember=0,
if yparam2 != 'None':
try:
yrange2 = Range1d(start=yaxminima[yparam2],
end=yaxmaxima[yparam2])
yrange2 = Range1d(start=get_yaxminima(r,yparam2,mode),
end=get_yaxmaxima(r,yparam2,mode))
except KeyError:
yrange2 = Range1d(start=rowdata[yparam2].min(),
end=rowdata[yparam2].max())

View File

@@ -12,6 +12,7 @@ from scipy import optimize
from django.utils import timezone
from math import log10
from rowers.mytypes import otwtypes,otetypes
nometrics = [
'originalvelo',
@@ -361,6 +362,26 @@ yaxminima = {ax[0]:ax[2] for ax in axes}
yaxmaxima = {ax[0]:ax[3] for ax in axes}
def get_yaxminima(r,metric,mode):
if metric == 'pace':
if mode in otetypes:
return r.slowpaceerg
else:
return r.slowpaceotw
return yaxminima[metric]
def get_yaxmaxima(r,metric,mode):
if metric == 'pace':
if mode in otetypes:
return r.fastpaceerg
else:
return r.fastpaceotw
return yaxmaxima[metric]
defaultfavoritecharts = (
{
'yparam1':'pace',

View File

@@ -3839,7 +3839,7 @@ def workout_flexchart3_view(request,*args,**kwargs):
xparam=xparam,yparam1=yparam1,
yparam2=yparam2,
promember=promember,plottype=plottype,
workstrokesonly=workstrokesonly
workstrokesonly=workstrokesonly,mode=row.workouttype
)
axchoicesbasic = {ax[0]:ax[1] for ax in axes if ax[4]=='basic'}