bug fix (dataframe index same as x axis name in multi flex)
This commit is contained in:
@@ -94,6 +94,7 @@ def errorbar(fig, x, y, source=ColumnDataSource(),
|
|||||||
xvalues = source.data[x]
|
xvalues = source.data[x]
|
||||||
yvalues = source.data[y]
|
yvalues = source.data[y]
|
||||||
|
|
||||||
|
|
||||||
xerrvalues = source.data['xerror']
|
xerrvalues = source.data['xerror']
|
||||||
yerrvalues = source.data['yerror']
|
yerrvalues = source.data['yerror']
|
||||||
try:
|
try:
|
||||||
@@ -2362,10 +2363,13 @@ def interactive_multiflex(datadf,xparam,yparam,groupby,extratitle='',
|
|||||||
if yparam == 'pace':
|
if yparam == 'pace':
|
||||||
y_axis_type = 'datetime'
|
y_axis_type = 'datetime'
|
||||||
|
|
||||||
|
datadf.index.names = ['index']
|
||||||
|
|
||||||
source = ColumnDataSource(
|
source = ColumnDataSource(
|
||||||
datadf,
|
datadf,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
TOOLS = 'save,pan,box_zoom,wheel_zoom,reset,tap,resize'
|
TOOLS = 'save,pan,box_zoom,wheel_zoom,reset,tap,resize'
|
||||||
|
|
||||||
if groupby != 'date':
|
if groupby != 'date':
|
||||||
|
|||||||
@@ -5979,6 +5979,7 @@ def multiflex_data(request,userid=0,
|
|||||||
if userid==0:
|
if userid==0:
|
||||||
userid = request.user.id
|
userid = request.user.id
|
||||||
|
|
||||||
|
|
||||||
palette = options['palette']
|
palette = options['palette']
|
||||||
groupby = options['groupby']
|
groupby = options['groupby']
|
||||||
binsize = options['binsize']
|
binsize = options['binsize']
|
||||||
@@ -6010,6 +6011,9 @@ def multiflex_data(request,userid=0,
|
|||||||
# prepare data frame
|
# prepare data frame
|
||||||
datadf,extracols = dataprep.read_cols_df_sql(ids,fieldlist)
|
datadf,extracols = dataprep.read_cols_df_sql(ids,fieldlist)
|
||||||
|
|
||||||
|
if xparam == groupby:
|
||||||
|
datadf['groupby'] = datadf[xparam]
|
||||||
|
groupy = 'groupby'
|
||||||
|
|
||||||
datadf = dataprep.clean_df_stats(datadf,workstrokesonly=workstrokesonly)
|
datadf = dataprep.clean_df_stats(datadf,workstrokesonly=workstrokesonly)
|
||||||
|
|
||||||
@@ -6060,14 +6064,18 @@ def multiflex_data(request,userid=0,
|
|||||||
labels=False))
|
labels=False))
|
||||||
|
|
||||||
|
|
||||||
xvalues = groups.mean()[xparam]
|
xvalues = groups.mean()[xparam]
|
||||||
yvalues = groups.mean()[yparam]
|
yvalues = groups.mean()[yparam]
|
||||||
xerror = groups.std()[xparam]
|
xerror = groups.std()[xparam]
|
||||||
yerror = groups.std()[yparam]
|
yerror = groups.std()[yparam]
|
||||||
groupsize = groups.count()[xparam]
|
groupsize = groups.count()[xparam]
|
||||||
|
|
||||||
|
print groupsize.sum(),groupsize.mean()
|
||||||
|
|
||||||
mask = groupsize <= min([0.01*groupsize.sum(),0.2*groupsize.mean()])
|
mask = groupsize <= min([0.01*groupsize.sum(),0.2*groupsize.mean()])
|
||||||
|
print '--------------------------'
|
||||||
xvalues.loc[mask] = np.nan
|
xvalues.loc[mask] = np.nan
|
||||||
|
|
||||||
yvalues.loc[mask] = np.nan
|
yvalues.loc[mask] = np.nan
|
||||||
xerror.loc[mask] = np.nan
|
xerror.loc[mask] = np.nan
|
||||||
yerror.loc[mask] = np.nan
|
yerror.loc[mask] = np.nan
|
||||||
@@ -6079,7 +6087,6 @@ def multiflex_data(request,userid=0,
|
|||||||
yerror.dropna(inplace=True)
|
yerror.dropna(inplace=True)
|
||||||
groupsize.dropna(inplace=True)
|
groupsize.dropna(inplace=True)
|
||||||
|
|
||||||
|
|
||||||
if len(groupsize) == 0:
|
if len(groupsize) == 0:
|
||||||
messages.error(request,'No data in selection')
|
messages.error(request,'No data in selection')
|
||||||
url = reverse(user_multiflex_select)
|
url = reverse(user_multiflex_select)
|
||||||
@@ -6097,6 +6104,7 @@ def multiflex_data(request,userid=0,
|
|||||||
'groupsize':groupsize,
|
'groupsize':groupsize,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
if yparam == 'pace':
|
if yparam == 'pace':
|
||||||
df['y'] = dataprep.paceformatsecs(df['y']/1.0e3)
|
df['y'] = dataprep.paceformatsecs(df['y']/1.0e3)
|
||||||
|
|
||||||
@@ -6128,8 +6136,9 @@ def multiflex_data(request,userid=0,
|
|||||||
df['groupval'] = groups.mean()['days ago'].fillna(value=0)
|
df['groupval'] = groups.mean()['days ago'].fillna(value=0)
|
||||||
groupcols = 100.*np.arange(aantal)/float(aantal)
|
groupcols = 100.*np.arange(aantal)/float(aantal)
|
||||||
|
|
||||||
|
|
||||||
groupcols = (groupcols-groupcols.min())/(groupcols.max()-groupcols.min())
|
groupcols = (groupcols-groupcols.min())/(groupcols.max()-groupcols.min())
|
||||||
|
|
||||||
if aantal == 1:
|
if aantal == 1:
|
||||||
groupcols = np.array([1.])
|
groupcols = np.array([1.])
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user