From 7122540bad36c8a264f7e0e94fae1717144abc39 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Wed, 7 Dec 2016 20:45:29 +0100 Subject: [PATCH] empower axis minima maxima --- rowers/interactiveplots.py | 157 ++++++++++++++----------------------- 1 file changed, 58 insertions(+), 99 deletions(-) diff --git a/rowers/interactiveplots.py b/rowers/interactiveplots.py index 6605e04c..049e238d 100644 --- a/rowers/interactiveplots.py +++ b/rowers/interactiveplots.py @@ -48,6 +48,64 @@ import stravastuff from rowers.dataprep import rdata import rowers.dataprep as dataprep +axlabels = { + 'time': 'Time', + 'distance': 'Distance (m)', + 'cumdist': 'Distance (m)', + 'hr': 'Heart Rate (bpm)', + 'spm': 'Stroke Rate (spm)', + 'pace': 'Pace (/500m)', + 'power': 'Power (Watt)', + 'averageforce': 'Average Drive Force (lbs)', + 'drivelength': 'Drive Length (m)', + 'peakforce': 'Peak Drive Force (lbs)', + 'forceratio': 'Average/Peak Drive Force Ratio', + 'driveenergy': 'Work per Stroke (J)', + 'drivespeed': 'Drive Speed (m/s)', + 'slip': 'Slip (degrees)', + 'catch': 'Catch (degrees)', + 'finish': 'Finish (degrees)', + 'wash': 'Wash (degrees)', + 'peakforceangle': 'Peak Force Angle (degrees)', + 'None': '', +} + +yaxminima = { + 'hr':100, + 'spm':15, + 'pace': 1.0e3*210, + 'power': 0, + 'averageforce': 0, + 'peakforce': 0, + 'forceratio':0, + 'drivelength':0.5, + 'driveenergy': 0, + 'drivespeed': 0, + 'slip': 0, + 'catch': -40, + 'finish': 20, + 'wash': 0, + 'peakforceangle': -20, +} + +yaxmaxima = { + 'hr':200, + 'spm':45, + 'pace': 1.0e3*75, + 'power': 600, + 'averageforce':200, + 'peakforce':400, + 'forceratio':1, + 'drivelength':2.0, + 'driveenergy': 1000, + 'drivespeed':4, + 'slip': 15, + 'catch': -75, + 'finish': 55, + 'wash': 30, + 'peakforceangle': 20, +} + def tailwind(bearing,vwind,winddir): """ Calculates head-on head/tailwind in direction of rowing @@ -578,52 +636,10 @@ def interactive_cum_flex_chart2(theworkouts,promember=0, ids = [int(w.id) for w in theworkouts] datadf = dataprep.getsmallrowdata_db([xparam,yparam1,yparam2],ids=ids) - axlabels = { - 'time': 'Time', - 'distance': 'Distance (m)', - 'hr': 'Heart Rate (bpm)', - 'spm': 'Stroke Rate (spm)', - 'pace': 'Pace (/500m)', - 'power': 'Power (Watt)', - 'averageforce': 'Average Drive Force (lbs)', - 'drivelength': 'Drive Length (m)', - 'peakforce': 'Peak Drive Force (lbs)', - 'forceratio': 'Average/Peak Drive Force Ratio', - 'driveenergy': 'Work per Stroke (J)', - 'drivespeed': 'Drive Speed (m/s)', - 'None': '', - } yparamname1 = axlabels[yparam1] yparamname2 = axlabels[yparam2] - yaxminima = { - 'hr':100, - 'spm':15, - 'pace': 1.0e3*210, - 'power': 0, - 'averageforce': 0, - 'peakforce': 0, - 'forceratio':0, - 'drivelength':0.5, - 'driveenergy': 0, - 'drivespeed': 0, - } - - yaxmaxima = { - 'hr':200, - 'spm':45, - 'pace':1.0e3*90, - 'power': 600, - 'averageforce':200, - 'peakforce':400, - 'forceratio':1, - 'drivelength':2.0, - 'driveenergy': 1000, - 'drivespeed':4, - } - - datadf = datadf[datadf[yparam1] > 0] @@ -879,63 +895,6 @@ def interactive_flex_chart2(id=0,promember=0, workstrokesonly=False): - axlabels = { - 'time': 'Time', - 'distance': 'Distance (m)', - 'cumdist': 'Distance (m)', - 'hr': 'Heart Rate (bpm)', - 'spm': 'Stroke Rate (spm)', - 'pace': 'Pace (/500m)', - 'power': 'Power (Watt)', - 'averageforce': 'Average Drive Force (lbs)', - 'drivelength': 'Drive Length (m)', - 'peakforce': 'Peak Drive Force (lbs)', - 'forceratio': 'Average/Peak Drive Force Ratio', - 'driveenergy': 'Work per Stroke (J)', - 'drivespeed': 'Drive Speed (m/s)', - 'slip': 'Slip (degrees)', - 'catch': 'Catch (degrees)', - 'finish': 'Finish (degrees)', - 'wash': 'Wash (degrees)', - 'peakforceangle': 'Peak Force Angle (degrees)', - 'None': '', - } - - yaxminima = { - 'hr':100, - 'spm':15, - 'pace': 1.0e3*210, - 'power': 0, - 'averageforce': 0, - 'peakforce': 0, - 'forceratio':0, - 'drivelength':0.5, - 'driveenergy': 0, - 'drivespeed': 0, - 'slip': 0, - 'catch': -70, - 'finish': 30, - 'wash': 0, - 'peakforceangle': -20, - } - - yaxmaxima = { - 'hr':200, - 'spm':45, - 'pace': 1.0e3*75, - 'power': 600, - 'averageforce':200, - 'peakforce':400, - 'forceratio':1, - 'drivelength':2.0, - 'driveenergy': 1000, - 'drivespeed':4, - 'slip': 30, - 'catch': -30, - 'finish': 70, - 'wash': 30, - 'peakforceangle': 20, - } #rowdata,row = dataprep.getrowdata_db(id=id) columns = [xparam,yparam1,yparam2,