getting part
This commit is contained in:
@@ -192,11 +192,11 @@ def tailwind(bearing, vwind, winddir):
|
||||
|
||||
|
||||
def interactive_hr_piechart(df, rower, title, totalseconds=0):
|
||||
if df.empty:
|
||||
if df.is_empty():
|
||||
return "", "Not enough data to make a chart"
|
||||
|
||||
df.sort_values(by='hr', inplace=True)
|
||||
df['timehr'] = df['deltat']*df['hr']
|
||||
df = df.sort("hr")
|
||||
df = df.with_columns((pl.col("deltat")*pl.col("hr")).alias("deltat"))
|
||||
|
||||
sumtimehr = df['deltat'].sum()
|
||||
|
||||
@@ -205,24 +205,23 @@ def interactive_hr_piechart(df, rower, title, totalseconds=0):
|
||||
|
||||
hrzones = rower.hrzones
|
||||
|
||||
qry = 'hr < {ut2}'.format(ut2=rower.ut2)
|
||||
qrydata = df.query(qry)
|
||||
qrydata = df.filter(pl.col("hr") < rower.ut2)
|
||||
frac_lut2 = totalseconds*qrydata['deltat'].sum()/sumtimehr
|
||||
|
||||
qry = '{ut2} <= hr < {ut1}'.format(ut1=rower.ut1, ut2=rower.ut2)
|
||||
frac_ut2 = totalseconds*df.query(qry)['deltat'].sum()/sumtimehr
|
||||
qrydata = df.lazy().filter(pl.col("hr") >= rower.ut2).filter(pl.col("hr") < rower.ut1)
|
||||
frac_ut2 = totalseconds*qrydata.collect()['deltat'].sum()/sumtimehr
|
||||
|
||||
qry = '{ut1} <= hr < {at}'.format(ut1=rower.ut1, at=rower.at)
|
||||
frac_ut1 = totalseconds*df.query(qry)['deltat'].sum()/sumtimehr
|
||||
qrydata = df.lazy().filter(pl.col("hr") >= rower.ut1).filter(pl.col("hr") < rower.at)
|
||||
frac_ut1 = totalseconds*qrydata.collect()['deltat'].sum()/sumtimehr
|
||||
|
||||
qry = '{at} <= hr < {tr}'.format(at=rower.at, tr=rower.tr)
|
||||
frac_at = totalseconds*df.query(qry)['deltat'].sum()/sumtimehr
|
||||
qrydata = df.lazy().filter(pl.col("hr") >= rower.at).filter(pl.col("hr") < rower.tr)
|
||||
frac_at = totalseconds*qrydata.collect()['deltat'].sum()/sumtimehr
|
||||
|
||||
qry = '{tr} <= hr < {an}'.format(tr=rower.tr, an=rower.an)
|
||||
frac_tr = totalseconds*df.query(qry)['deltat'].sum()/sumtimehr
|
||||
qrydata = df.lazy().filter(pl.col("hr") >= rower.tr).filter(pl.col("hr") < rower.an)
|
||||
frac_tr = totalseconds*qrydata.collect()['deltat'].sum()/sumtimehr
|
||||
|
||||
qry = 'hr >= {an}'.format(an=rower.an)
|
||||
frac_an = totalseconds*df.query(qry)['deltat'].sum()/sumtimehr
|
||||
qrydata = df.filter(pl.col("hr") >= rower.an)
|
||||
frac_an = totalseconds*qrydata['deltat'].sum()/sumtimehr
|
||||
|
||||
datadict = {
|
||||
'<{ut2}'.format(ut2=hrzones[1]): frac_lut2,
|
||||
@@ -1931,7 +1930,6 @@ def interactive_streamchart(id=0, promember=0):
|
||||
return [script, div]
|
||||
|
||||
def forcecurve_multi_interactive_chart(selected): # pragma: no cover
|
||||
df_plot = pd.DataFrame()
|
||||
ids = [analysis.id for analysis in selected]
|
||||
workoutids = [analysis.workout.id for analysis in selected]
|
||||
|
||||
@@ -1940,18 +1938,17 @@ def forcecurve_multi_interactive_chart(selected): # pragma: no cover
|
||||
columns = ['catch', 'slip', 'wash', 'finish', 'averageforce',
|
||||
'peakforceangle', 'peakforce', 'spm', 'distance',
|
||||
'workoutstate', 'workoutid', 'driveenergy', 'cumdist']
|
||||
columns = columns + [name for name, d in metrics.rowingmetrics]
|
||||
|
||||
rowdata = dataprep.getsmallrowdata_db(columns, ids=workoutids,
|
||||
rowdata = dataprep.getsmallrowdata_pl(columns, ids=workoutids,
|
||||
workstrokesonly=False)
|
||||
|
||||
rowdata = rowdata.fill_nan(None).drop_nulls()
|
||||
|
||||
rowdata.dropna(axis=1, how='all', inplace=True)
|
||||
rowdata.dropna(axis=0, how='any', inplace=True)
|
||||
|
||||
if rowdata.empty:
|
||||
if rowdata.is_empty():
|
||||
return "", "No Valid Data Available", "", ""
|
||||
|
||||
data_dict = rowdata.to_dict("records")
|
||||
data_dict = rowdata.to_dicts()
|
||||
|
||||
thresholdforces = []
|
||||
for analysis in selected:
|
||||
|
||||
Reference in New Issue
Block a user