fixes in interactiveplots
This commit is contained in:
@@ -5909,9 +5909,12 @@ def interactive_flex_chart2(id, r, promember=0,
|
|||||||
|
|
||||||
x1 = rowdata['x1']
|
x1 = rowdata['x1']
|
||||||
y1 = rowdata['y1']
|
y1 = rowdata['y1']
|
||||||
|
try:
|
||||||
popt, pcov = optimize.curve_fit(func, x1, y1)
|
popt, pcov = optimize.curve_fit(func, x1, y1)
|
||||||
ytrend = func(x1, popt[0], popt[1])
|
ytrend = func(x1, popt[0], popt[1])
|
||||||
rowdata['ytrend'] = ytrend
|
rowdata['ytrend'] = ytrend
|
||||||
|
except TypeError:
|
||||||
|
rowdata['ytrend'] = y1
|
||||||
|
|
||||||
# prepare data
|
# prepare data
|
||||||
source = ColumnDataSource(
|
source = ColumnDataSource(
|
||||||
|
|||||||
@@ -426,7 +426,7 @@ def handle_workout_tp_upload(w, thetoken, tcxfilename, debug=False, **kwargs):
|
|||||||
w.tpid = -1
|
w.tpid = -1
|
||||||
try:
|
try:
|
||||||
os.remove(tcxfilename)
|
os.remove(tcxfilename)
|
||||||
except WindowsError:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
w.save()
|
w.save()
|
||||||
@@ -748,32 +748,47 @@ def handle_strava_sync(stravatoken,
|
|||||||
try:
|
try:
|
||||||
res = act.wait(poll_interval=1.0, timeout=30)
|
res = act.wait(poll_interval=1.0, timeout=30)
|
||||||
except stravalib.exc.ActivityUploadFailed: # pragma: no cover
|
except stravalib.exc.ActivityUploadFailed: # pragma: no cover
|
||||||
dologging('strava_fail.log', 'Strava upload failed for Workout {id} ActivityUploadFailed'.format(
|
dologging(
|
||||||
id=workoutid))
|
'strava_fail.log',
|
||||||
|
'Strava upload failed for Workout {id} ActivityUploadFailed'.format(
|
||||||
|
id=workoutid)
|
||||||
|
)
|
||||||
tb = traceback.format_exc()
|
tb = traceback.format_exc()
|
||||||
dologging('strava_fail.log', tb)
|
dologging('strava_fail.log', tb)
|
||||||
failed = True
|
failed = True
|
||||||
except stravalib.exc.TimeoutExceeded: # pragma: no cover
|
except stravalib.exc.TimeoutExceeded: # pragma: no cover
|
||||||
dologging('strava_fail.log', 'Strava upload failed for Workout {id} TimeOutExceeded'.format(
|
dologging(
|
||||||
id=workoutid))
|
'strava_fail.log',
|
||||||
|
'Strava upload failed for Workout {id} TimeOutExceeded'.format(
|
||||||
|
id=workoutid)
|
||||||
|
)
|
||||||
tb = traceback.format_exc()
|
tb = traceback.format_exc()
|
||||||
dologging('strava_fail.log', tb)
|
dologging('strava_fail.log', tb)
|
||||||
failed = True
|
failed = True
|
||||||
except JSONDecodeError: # pragma: no cover
|
except JSONDecodeError: # pragma: no cover
|
||||||
dologging('strava_fail.log', 'Strava upload failed for Workout {id} JSONDecodeError'.format(
|
dologging(
|
||||||
id=workoutid))
|
'strava_fail.log',
|
||||||
|
'Strava upload failed for Workout {id} JSONDecodeError'.format(
|
||||||
|
id=workoutid)
|
||||||
|
)
|
||||||
tb = traceback.format_exc()
|
tb = traceback.format_exc()
|
||||||
dologging('strava_fail.log', tb)
|
dologging('strava_fail.log', tb)
|
||||||
failed = True
|
failed = True
|
||||||
except stravalib.exc.ObjectNotFound: # pragma: no cover
|
except stravalib.exc.ObjectNotFound: # pragma: no cover
|
||||||
dologging('strava_fail.log', 'Strava upload failed for Workout {id} ObjectNotFound'.format(
|
dologging(
|
||||||
id=workoutid))
|
'strava_fail.log',
|
||||||
|
'Strava upload failed for Workout {id} ObjectNotFound'.format(
|
||||||
|
id=workoutid)
|
||||||
|
)
|
||||||
tb = traceback.format_exc()
|
tb = traceback.format_exc()
|
||||||
dologging('strava_fail.log', tb)
|
dologging('strava_fail.log', tb)
|
||||||
failed = True
|
failed = True
|
||||||
except IndexError: # pragma: no cover
|
except IndexError: # pragma: no cover
|
||||||
dologging('strava_fail.log', 'Strava upload failed for Workout {id} IndexError'.format(
|
dologging(
|
||||||
id=workoutid))
|
'strava_fail.log',
|
||||||
|
'Strava upload failed for Workout {id} IndexError'.format(
|
||||||
|
id=workoutid)
|
||||||
|
)
|
||||||
tb = traceback.format_exc()
|
tb = traceback.format_exc()
|
||||||
dologging('strava_fail.log', tb)
|
dologging('strava_fail.log', tb)
|
||||||
failed = True
|
failed = True
|
||||||
@@ -3846,10 +3861,13 @@ def fetch_strava_workout(stravatoken, oauth_data, stravaid, csvfilename, userid,
|
|||||||
if velo is None: # pragma: no cover
|
if velo is None: # pragma: no cover
|
||||||
velo = np.zeros(nr_rows)
|
velo = np.zeros(nr_rows)
|
||||||
|
|
||||||
|
try:
|
||||||
dt = np.diff(t).mean()
|
dt = np.diff(t).mean()
|
||||||
wsize = round(5./dt)
|
wsize = round(5./dt)
|
||||||
|
|
||||||
velo2 = ewmovingaverage(velo, wsize)
|
velo2 = ewmovingaverage(velo, wsize)
|
||||||
|
except ValueError:
|
||||||
|
velo2 = velo
|
||||||
|
|
||||||
if coords is not None:
|
if coords is not None:
|
||||||
try:
|
try:
|
||||||
|
|||||||
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
Binary file not shown.
Reference in New Issue
Block a user