I need help with setting up the bokeh app to make an interactive data table with colour coding based on simple colour spectrum like FEM highest value gets red and lowest value gets blue and other values get colours something in between.
I have about 60 such parameters and about 150 thousand combinations of them.
I am trying to fix up some 15 to 20 sliders and trying to play with them to see which of these combinations fall into my criteria based on some filters.I have used some filters to sort the data and have selected top 100 of them based on the filters the user would input,
currently, with this code, the table does shows up and sliders work well updating the data table
I have written the code on the latest Python 3.7 and latest Bokeh 1.2.0 and latest Pandas on Spyder IDE. I tried doing custom JS since I don’t really know to programme on JavaScript, I would rather avoid it completely.
Data = pd.read_excel (r'C:\Users\vsri\Desktop\app\try.xlsx') df = pd.DataFrame (Data, columns= ['No.','a','z_1', 'z_2','u']) dfs = pd.DataFrame(dfs.describe()) source = ColumnDataSource(dfs) a_Slider= RangeSlider(start=min(df['a']), end=max(df['a']), value=(min(df['a']),max(df['a'])), step=1, title='YY in mm') z_1_Slider = RangeSlider(start=min(df['z_1']), end=max(df['z_1']), value=(min(df['z_1']),max(df['z_1'])), step=1, title='ZZ') def callback(attr,new,old) a_s = a_Slider.value[0] a_e = a_Slider.value[1] z_1_s= z_1_Slider.value[0] z_1_e= z_1_Slider.value[1] dff= pd.DataFrame(df[(df.a >= a_s) & (df.a <= a_e) & (df.z_1 >= z_1_s) & (df.z_1 <= z_1_e) & (df.z_2 >= z_2_s) & (df.z_2 <= z_2_e)& (df.u >= u_s)& (df.u <= u_e)]) source.data = ColumnDataSource.from_df(dff) #function ends here a_Slider.on_change("value",callback) z_1_Slider.on_change("value",callback) columns = [TableColumn(field='No.', title='Concept No'), TableColumn(field='a', title='a'), TableColumn(field='z_1', title='z_1'), TableColumn(field='z_2', title='z_2'), TableColumn(field='u', title='u')] table=DataTable(source=source,columns = columns) Graphs = row([table]) Controls1= column([a_Slider,z_1_Slider]) layout= row(Controls1,Graphs)
I am expecting a some coding help with adding a color code to the data table as shown in the pic attached,
column should have the highest values with a color and least value with another color and all in between with a color spectrum. which is specific for a particular column.on a second priority if you could guide me to write a loop for each of sliders definition and callback
I don’t want to repeat every line again and again.