Private
Public Access
1
0
This commit is contained in:
2024-04-19 18:17:54 +02:00
parent 8dc0e7fb58
commit ac7c114649
3 changed files with 166 additions and 40 deletions

View File

@@ -459,13 +459,13 @@ def interactive_forcecurve(theworkouts):
columns = columns + [name for name, d in metrics.rowingmetrics]
rowdata = dataprep.getsmallrowdata_pl(columns, ids=ids,
rowdata = dataprep.read_data(columns, ids=ids,
workstrokesonly=False)
if rowdata.is_empty():
return "", "No Valid Data Available"
rowdata = rowdata.fill_nan(None).drop_nulls()
rowdata = dataprep.remove_nulls_pl(rowdata)
data_dict = rowdata.to_dicts()
@@ -796,10 +796,10 @@ def interactive_histoall(theworkouts, histoparam, includereststrokes,
ids = [int(w.id) for w in theworkouts]
columns = [name for name, d in metrics.rowingmetrics]+['spm', 'driveenergy', 'distance', 'workoutstate', 'workoutid']
columns = [histoparam, 'spm', 'driveenergy', 'distance', 'workoutstate', 'workoutid']
workstrokesonly = not includereststrokes
rowdata = dataprep.getsmallrowdata_pl(
rowdata = dataprep.read_data(
columns, ids=ids, doclean=True, workstrokesonly=workstrokesonly)
rowdata = rowdata.fill_nan(None).drop_nulls()
@@ -1190,7 +1190,7 @@ def forcecurve_multi_interactive_chart(selected): # pragma: no cover
'workoutstate', 'workoutid', 'driveenergy', 'cumdist']
columns = columns + [name for name, d in metrics.rowingmetrics]
rowdata = dataprep.getsmallrowdata_pl(columns, ids=workoutids,
rowdata = dataprep.read_data(columns, ids=workoutids,
workstrokesonly=False)
rowdata = rowdata.fill_nan(None).drop_nulls()
@@ -1379,7 +1379,7 @@ def interactive_chart(id=0, promember=0, intervaldata={}):
TOOLS = 'pan,box_zoom,wheel_zoom,reset,tap,hover,crosshair'
columns = ['time', 'pace', 'hr', 'fpace', 'ftime', 'spm']
datadf = dataprep.getsmallrowdata_pl(columns, ids=[id])
datadf = dataprep.read_data(columns, ids=[id])
if datadf.is_empty():
return "", "No Valid Data Available"
@@ -1572,10 +1572,10 @@ def interactive_cum_flex_chart2(theworkouts, promember=0,
datadf = pd.DataFrame()
if promember:
datadf = dataprep.getsmallrowdata_pl(columns, ids=ids, doclean=True,
datadf = dataprep.read_data(columns, ids=ids, doclean=True,
workstrokesonly=workstrokesonly, for_chart=True)
else:
datadf = dataprep.getsmallrowdata_pl(columns_basic, ids=ids, doclean=True,
datadf = dataprep.read_data(columns_basic, ids=ids, doclean=True,
workstrokesonly=workstrokesonly, for_chart=True)
try:
@@ -1803,15 +1803,15 @@ def interactive_flex_chart2(id, r, promember=0,
columns = columns + ['spm', 'driveenergy', 'distance','workoutstate']
columns_basic = columns_basic + ['spm', 'driveenergy', 'distance','workoutstate']
datadf = pd.DataFrame()
if promember:
rowdata = dataprep.getsmallrowdata_pl(columns, ids=[id], doclean=True,
workstrokesonly=workstrokesonly, for_chart=True)
rowdata = dataprep.read_data(columns, ids=[id], doclean=True,
workstrokesonly=workstrokesonly, for_chart=True)
else:
rowdata = dataprep.getsmallrowdata_pl(columns_basic, ids=[id], doclean=True,
workstrokesonly=workstrokesonly, for_chart=True)
rowdata = dataprep.read_data(columns_basic, ids=[id], doclean=True,
workstrokesonly=workstrokesonly, for_chart=True)
if r.usersmooth > 1: # pragma: no cover
for column in columns:
try:
@@ -1825,18 +1825,16 @@ def interactive_flex_chart2(id, r, promember=0,
except KeyError:
pass
try:
if len(rowdata) < 2:
if promember:
rowdata = dataprep.getsmallrowdata_pl(columns, ids=[id],
doclean=False,
workstrokesonly=False, for_chart=True)
else:
rowdata = dataprep.getsmallrowdata_pl(columns_basic, ids=[id], doclean=False,
workstrokesonly=False, for_chart=True)
workstrokesonly = False
except (KeyError, TypeError): # pragma: no cover
workstrokesonly = False
if len(rowdata) < 2:
if promember:
rowdata = dataprep.read_data(columns, ids=[id],
doclean=False,
workstrokesonly=False, for_chart=True)
else:
rowdata = dataprep.read_data(columns_basic, ids=[id], doclean=False,
workstrokesonly=False, for_chart=True)
workstrokesonly = False
try:
_ = rowdata[yparam2]
except (KeyError, TypeError, ColumnNotFoundError): # pragma: no cover
@@ -1867,14 +1865,6 @@ def interactive_flex_chart2(id, r, promember=0,
if rowdata.is_empty():
return "", "No valid data", workstrokesonly
workoutstatesrest = [3]
if workstrokesonly: # pragma: no cover
try:
rowdata = rowdata.filter(~pl.col("workoutstate").is_in(workoutstatesrest))
except (KeyError, ColumnNotFoundError):
pass
try:
tseconds = rowdata['time']
except (KeyError, ColumnNotFoundError): # pragma: no cover
@@ -2205,9 +2195,11 @@ def get_zones_report_pl(rower, startdate, enddate, trainingzones='hr', date_agg=
columns = ['workoutid', 'hr', 'power', 'time']
df = dataprep.getsmallrowdata_pl(columns, ids=ids)
df = dataprep.read_data(columns, ids=ids, workstrokesonly=False, doclean=False)
df = dataprep.remove_nulls_pl(df)
df = df.with_columns((pl.col("time").diff().clip(0, 20*1.e3)).alias("deltat")).lazy()
hrzones = rower.hrzones
powerzones = rower.powerzones