fixed flex chart
This commit is contained in:
@@ -457,7 +457,7 @@ def interactive_forcecurve(theworkouts,workstrokesonly=False):
|
||||
)
|
||||
|
||||
plot = Figure(tools=TOOLS,
|
||||
toolbar_sticky=False)
|
||||
toolbar_sticky=False,toolbar_location="above")
|
||||
|
||||
# add watermark
|
||||
watermarkurl = "/static/img/logo7.png"
|
||||
@@ -646,7 +646,8 @@ def interactive_forcecurve(theworkouts,workstrokesonly=False):
|
||||
peakflabel.text = 'Fpeak: '+peakforceav.toFixed(2)
|
||||
peakforceanglelabel.text = 'Peak angle: '+peakforceangleav.toFixed(2)
|
||||
|
||||
source.trigger('change');
|
||||
// source.trigger('change');
|
||||
source.change.emit();
|
||||
""")
|
||||
|
||||
slider_spm_min = Slider(start=15.0, end=55,value=15.0, step=.1,
|
||||
@@ -2887,7 +2888,7 @@ def interactive_cum_flex_chart2(theworkouts,promember=0,
|
||||
y2label.text = yname2+': '+(ym2).toFixed(2)
|
||||
xlabel.text = xname+': '+(xm).toFixed(2)
|
||||
|
||||
source2.trigger('change');
|
||||
source2.change.emit();
|
||||
""")
|
||||
|
||||
slider_spm_min = Slider(start=15.0, end=55,value=15.0, step=.1,
|
||||
@@ -3353,6 +3354,10 @@ def interactive_flex_chart2(id=0,promember=0,
|
||||
|
||||
hover.mode = 'mouse'
|
||||
|
||||
x1meanline = [rowdata[xparam].mean(),rowdata[xparam].mean()]
|
||||
y1meanline = [rowdata[yparam1].mean(),rowdata[yparam1].mean()]
|
||||
y2meanline = [rowdata[yparam2].mean(),rowdata[yparam2].mean()]
|
||||
|
||||
|
||||
callback = CustomJS(args = dict(source=source,source2=source2,
|
||||
x1means=x1means,
|
||||
@@ -3370,6 +3375,8 @@ def interactive_flex_chart2(id=0,promember=0,
|
||||
var y2 = data['y2']
|
||||
var spm1 = data['spm']
|
||||
var time1 = data['time']
|
||||
var ftime1 = data['ftime']
|
||||
var index1 = data['index']
|
||||
var pace1 = data['pace']
|
||||
var hr1 = data['hr']
|
||||
var fpace1 = data['fpace']
|
||||
@@ -3379,6 +3386,9 @@ def interactive_flex_chart2(id=0,promember=0,
|
||||
var xname = data['xname'][0]
|
||||
var yname1 = data['yname1'][0]
|
||||
var yname2 = data['yname2'][0]
|
||||
var workoutid1 = data['workoutid'][0]
|
||||
var workoutstate1 = data['workoutstate'][0]
|
||||
|
||||
|
||||
var annotation = annotation.value
|
||||
var minspm = minspm.value
|
||||
@@ -3396,17 +3406,23 @@ def interactive_flex_chart2(id=0,promember=0,
|
||||
data2['y2'] = []
|
||||
data2['spm'] = []
|
||||
data2['time'] = []
|
||||
data2['ftime'] = []
|
||||
data2['pace'] = []
|
||||
data2['hr'] = []
|
||||
data2['fpace'] = []
|
||||
data2['index'] = []
|
||||
data2['distance'] = []
|
||||
data2['power'] = []
|
||||
data2['x1mean'] = []
|
||||
data2['y1mean'] = []
|
||||
data2['y2mean'] = []
|
||||
data2['xvals'] = []
|
||||
data2['y1vals'] = []
|
||||
data2['y2vals'] = []
|
||||
data2['driveenergy'] = []
|
||||
data2['workoutid'] = []
|
||||
data2['workoutstate'] = []
|
||||
data2['xname'] = []
|
||||
data2['yname1'] = []
|
||||
data2['yname2'] = []
|
||||
|
||||
|
||||
for (i=0; i<x1.length; i++) {
|
||||
if (spm1[i]>=minspm && spm1[i]<=maxspm) {
|
||||
@@ -3417,11 +3433,20 @@ def interactive_flex_chart2(id=0,promember=0,
|
||||
data2['y2'].push(y2[i])
|
||||
data2['spm'].push(spm1[i])
|
||||
data2['time'].push(time1[i])
|
||||
data2['index'].push(index1[i])
|
||||
data2['ftime'].push(ftime1[i])
|
||||
data2['fpace'].push(fpace1[i])
|
||||
data2['driveenergy'].push(driveenergy1[i])
|
||||
data2['pace'].push(pace1[i])
|
||||
data2['hr'].push(hr1[i])
|
||||
data2['distance'].push(distance1[i])
|
||||
data2['power'].push(power1[i])
|
||||
data2['workoutid'].push(workoutid1)
|
||||
data2['workoutstate'].push(workoutstate1)
|
||||
data2['xname'].push(xname)
|
||||
data2['yname1'].push(yname1)
|
||||
data2['yname2'].push(yname2)
|
||||
|
||||
|
||||
xm += x1[i]
|
||||
ym1 += y1[i]
|
||||
@@ -3435,9 +3460,16 @@ def interactive_flex_chart2(id=0,promember=0,
|
||||
ym1 /= data2['x1'].length
|
||||
ym2 /= data2['x1'].length
|
||||
|
||||
data2['x1mean'] = [xm,xm]
|
||||
data2['y1mean'] = [ym1,ym1]
|
||||
data2['y2mean'] = [ym2,ym2]
|
||||
for (i=0; i<data2['x1'].length; i++) {
|
||||
data2['x1mean'].push(xm)
|
||||
data2['y1mean'].push(ym1)
|
||||
data2['y2mean'].push(ym2)
|
||||
}
|
||||
|
||||
|
||||
// data2['x1mean'] = [xm,xm]
|
||||
// data2['y1mean'] = [ym1,ym1]
|
||||
// data2['y2mean'] = [ym2,ym2]
|
||||
x1means.location = xm
|
||||
y1means.location = ym1
|
||||
y2means.location = ym2
|
||||
@@ -3446,7 +3478,7 @@ def interactive_flex_chart2(id=0,promember=0,
|
||||
xlabel.text = xname+': '+xm.toFixed(2)
|
||||
annolabel.text = annotation
|
||||
|
||||
source2.trigger('change');
|
||||
source2.change.emit();
|
||||
""")
|
||||
|
||||
annotation = TextInput(title="Type your plot notes here", value="",
|
||||
@@ -3653,7 +3685,7 @@ def thumbnail_flex_chart(rowdata,id=0,promember=0,
|
||||
else:
|
||||
rowdata['yname2'] = axlabels[yparam1]
|
||||
|
||||
|
||||
|
||||
# prepare data
|
||||
source = ColumnDataSource(
|
||||
rowdata
|
||||
|
||||
Reference in New Issue
Block a user