From 8b9cba15f6d00e998e43363ff3be2291a2d53c4b Mon Sep 17 00:00:00 2001 From: Felipe Machado Date: Fri, 31 Aug 2018 15:06:11 -0300 Subject: [PATCH] Fixing bokeh plots layout (#217) * fixing bokeh plots layout * removing unused code --- .../qlf/dashboard/bokeh/qacountbins/main.py | 8 +-- .../qlf/dashboard/bokeh/qacountpix/main.py | 8 +-- .../qlf/dashboard/bokeh/qagetbias/main.py | 8 +-- .../qlf/dashboard/bokeh/qagetrms/main.py | 10 ++-- .../qlf/dashboard/bokeh/qainteg/main.py | 8 +-- .../qlf/dashboard/bokeh/qaskycont/main.py | 10 ++-- .../qlf/dashboard/bokeh/qaskypeak/main.py | 10 ++-- .../qlf/dashboard/bokeh/qaskyresid/main.py | 8 +-- .../qlf/dashboard/bokeh/qasnr/main.py | 19 +++---- .../framework/qlf/dashboard/bokeh/qlf_plot.py | 2 +- .../qlf/dashboard/templates/dashboard/qa.html | 57 +------------------ 11 files changed, 46 insertions(+), 102 deletions(-) diff --git a/backend/framework/qlf/dashboard/bokeh/qacountbins/main.py b/backend/framework/qlf/dashboard/bokeh/qacountbins/main.py index fe0b8e6b..0cccbc1e 100644 --- a/backend/framework/qlf/dashboard/bokeh/qacountbins/main.py +++ b/backend/framework/qlf/dashboard/bokeh/qacountbins/main.py @@ -178,12 +178,12 @@ def load_qa(self): # Prepare tables comments='Number of fibers with a nonzero number of bins above highest threshold' metric_txt=mtable('countbins', mergedqa, comments ) - metric_tb=Div(text=metric_txt, width=500) + metric_tb=Div(text=metric_txt, width=350) alert_txt = alert_table(nrg,wrg) - alert_tb = Div(text=alert_txt, width=500) + alert_tb = Div(text=alert_txt, width=350) - layout = column(widgetbox(info_col, css_classes=["header"]), - column(widgetbox(metric_tb),widgetbox(alert_tb), css_classes=["table-ranges"]), + layout = column(widgetbox(info_col, css_classes=["header"]), Div(), + widgetbox(metric_tb),widgetbox(alert_tb), p, p2, css_classes=["display-grid-countbins"]) diff --git a/backend/framework/qlf/dashboard/bokeh/qacountpix/main.py b/backend/framework/qlf/dashboard/bokeh/qacountpix/main.py index 2ef487e7..ce66c7b1 100644 --- a/backend/framework/qlf/dashboard/bokeh/qacountpix/main.py +++ b/backend/framework/qlf/dashboard/bokeh/qacountpix/main.py @@ -169,14 +169,14 @@ def load_qa(self): metric_txt=metric_table(metricname, comments, keyname, curexp=curexp, refexp=refexp ) metric_txt=mtable('countpix', mergedqa, comments ) - metric_tb=Div(text=metric_txt, width=500) + metric_tb=Div(text=metric_txt, width=300) alert_txt = alert_table(nrg,wrg) - alert_tb = Div(text=alert_txt, width=500) + alert_tb = Div(text=alert_txt, width=300) - layout = column(widgetbox(info_col, css_classes=["header"]), - column(widgetbox(metric_tb), widgetbox(alert_tb), css_classes=["table-ranges"]), + layout = column(widgetbox(info_col, css_classes=["header"]), Div(), + widgetbox(metric_tb), widgetbox(alert_tb), p, css_classes=["display-grid"]) diff --git a/backend/framework/qlf/dashboard/bokeh/qagetbias/main.py b/backend/framework/qlf/dashboard/bokeh/qagetbias/main.py index 63bea5c3..9ac889b6 100644 --- a/backend/framework/qlf/dashboard/bokeh/qagetbias/main.py +++ b/backend/framework/qlf/dashboard/bokeh/qagetbias/main.py @@ -176,13 +176,13 @@ def load_qa(self): refexp=mergedqa['TASKS']['CHECK_CCDs']['PARAMS']['BIAS_AMP_REF'] metric_txt=metric_table(metricname, comments, keyname, curexp=curexp, refexp=refexp ) metric_txt=mtable('getbias', mergedqa, comments ) - metric_tb=Div(text=metric_txt, width=500) + metric_tb=Div(text=metric_txt, width=350) alert_txt = alert_table(nrg,wrg) - alert_tb = Div(text=alert_txt, width=500) + alert_tb = Div(text=alert_txt, width=350) - ptxt = column(widgetbox(info_col, css_classes=["header"]), - column(widgetbox(metric_tb),widgetbox(alert_tb), css_classes=["table-ranges"]), + ptxt = column(widgetbox(info_col, css_classes=["header"]), Div(), + widgetbox(metric_tb),widgetbox(alert_tb), p, css_classes=["display-grid"]) # ,p_hist) diff --git a/backend/framework/qlf/dashboard/bokeh/qagetrms/main.py b/backend/framework/qlf/dashboard/bokeh/qagetrms/main.py index cd3f3292..5fb665b8 100644 --- a/backend/framework/qlf/dashboard/bokeh/qagetrms/main.py +++ b/backend/framework/qlf/dashboard/bokeh/qagetrms/main.py @@ -104,14 +104,14 @@ def load_qa(self): # Prepare tables comments='value of RMS for each amplifier read directly from the header of the pre processed image' refexp=mergedqa['TASKS']['CHECK_CCDs']['PARAMS']['BIAS_AMP_REF'] - metric_txt=mtable('getrms', mergedqa, comments ) - metric_tb=Div(text=metric_txt, width=500) + metric_txt=mtable('getbias', mergedqa, comments ) + metric_tb=Div(text=metric_txt, width=350) alert_txt = alert_table(nrg,wrg) - alert_tb = Div(text=alert_txt, width=500) + alert_tb = Div(text=alert_txt, width=350) - layout = column(widgetbox(info_col, css_classes=["header"]), - column(widgetbox(metric_tb),widgetbox(alert_tb), css_classes=["table-ranges"]), + layout = column(widgetbox(info_col, css_classes=["header"]), Div(), + widgetbox(metric_tb),widgetbox(alert_tb), p, p2, css_classes=["display-grid"]) diff --git a/backend/framework/qlf/dashboard/bokeh/qainteg/main.py b/backend/framework/qlf/dashboard/bokeh/qainteg/main.py index 58638e1a..d2e3e64a 100644 --- a/backend/framework/qlf/dashboard/bokeh/qainteg/main.py +++ b/backend/framework/qlf/dashboard/bokeh/qainteg/main.py @@ -124,13 +124,13 @@ def load_qa(self): # Prepare tables comments='List of the average fiber mag for each of N target types in this camera' metric_txt=mtable('integ', mergedqa, comments, objtype=objlist) # objtype=['ELG','STAR'] ) - metric_tb=Div(text=metric_txt, width=450) + metric_tb=Div(text=metric_txt, width=350) alert_txt = alert_table(nrg,wrg) - alert_tb = Div(text=alert_txt, width=450) + alert_tb = Div(text=alert_txt, width=350) - layout = column(widgetbox(info_col, css_classes=["header"]), - column(widgetbox(metric_tb),widgetbox(alert_tb), css_classes=["table-ranges"]), + layout = column(widgetbox(info_col, css_classes=["header"]), Div(), + widgetbox(metric_tb),widgetbox(alert_tb), fiber_hist, css_classes=["display-grid"]) diff --git a/backend/framework/qlf/dashboard/bokeh/qaskycont/main.py b/backend/framework/qlf/dashboard/bokeh/qaskycont/main.py index a66f8112..caa0f5af 100644 --- a/backend/framework/qlf/dashboard/bokeh/qaskycont/main.py +++ b/backend/framework/qlf/dashboard/bokeh/qaskycont/main.py @@ -165,15 +165,15 @@ def load_qa(self): # Prepare tables comments='Sky continuum in all configured continuum areas averaged over all sky fibers' metric_txt=mtable('skycont', mergedqa, comments ) - metric_tb=Div(text=metric_txt, width=450) + metric_tb=Div(text=metric_txt, width=350) alert_txt = alert_table(nrg,wrg) - alert_tb = Div(text=alert_txt, width=450) + alert_tb = Div(text=alert_txt, width=350) - layout = column(widgetbox(info_col, css_classes=["header"]), - column(widgetbox(metric_tb),widgetbox(alert_tb), css_classes=["table-ranges"]), + layout = column(widgetbox(info_col, css_classes=["header"]), Div(), + widgetbox(metric_tb), widgetbox(alert_tb), p2, - css_classes=["display-grid-skycont"]) + css_classes=["display-grid"]) # End of Bokeh Block return file_html(layout, CDN, "SKYCONT") diff --git a/backend/framework/qlf/dashboard/bokeh/qaskypeak/main.py b/backend/framework/qlf/dashboard/bokeh/qaskypeak/main.py index a0f4a8f2..8a48fcf5 100644 --- a/backend/framework/qlf/dashboard/bokeh/qaskypeak/main.py +++ b/backend/framework/qlf/dashboard/bokeh/qaskypeak/main.py @@ -212,16 +212,16 @@ def load_qa(self): # Prepare tables comments='Sky continuum in all configured continuum areas averaged over all sky fibers' metric_txt=mtable('skypeak', mergedqa, comments ) - metric_tb=Div(text=metric_txt, width=450) + metric_tb=Div(text=metric_txt, width=350) alert_txt = alert_table(nrg,wrg) - alert_tb = Div(text=alert_txt, width=450) + alert_tb = Div(text=alert_txt, width=350) #row1 = column(p, p_hist) - layout = column(widgetbox(info_col, css_classes=["header"]), - column(widgetbox(metric_tb),widgetbox(alert_tb), css_classes=["table-ranges"]), + layout = column(widgetbox(info_col, css_classes=["header"]), Div(), + widgetbox(metric_tb),widgetbox(alert_tb), p, p_hist, - css_classes=["display-grid-skypeak"]) + css_classes=["display-grid"]) return file_html(layout, CDN, "SKYPEAK") diff --git a/backend/framework/qlf/dashboard/bokeh/qaskyresid/main.py b/backend/framework/qlf/dashboard/bokeh/qaskyresid/main.py index 0ee7e752..1b940622 100644 --- a/backend/framework/qlf/dashboard/bokeh/qaskyresid/main.py +++ b/backend/framework/qlf/dashboard/bokeh/qaskyresid/main.py @@ -285,14 +285,14 @@ def load_qa(self): # Prepare tables comments='Median of residuals over all sky fibers' metric_txt=mtable('skyresid', mergedqa, comments ) - metric_tb=Div(text=metric_txt, width=450) + metric_tb=Div(text=metric_txt, width=350) alert_txt = alert_table(nrg,wrg) - alert_tb = Div(text=alert_txt, width=450) + alert_tb = Div(text=alert_txt, width=350) try: - layout = column([widgetbox(info_col, css_classes=["header"]), - widgetbox(metric_tb, alert_tb, css_classes=["table-ranges"])] + layout = column([widgetbox(info_col, css_classes=["header"]), Div(), + widgetbox(metric_tb), widgetbox(alert_tb)] + [p2] + p_s,css_classes=['display-grid-skyresid']) except Exception as err: diff --git a/backend/framework/qlf/dashboard/bokeh/qasnr/main.py b/backend/framework/qlf/dashboard/bokeh/qasnr/main.py index 5b9333cc..d1f8b19b 100644 --- a/backend/framework/qlf/dashboard/bokeh/qasnr/main.py +++ b/backend/framework/qlf/dashboard/bokeh/qasnr/main.py @@ -496,7 +496,7 @@ def fit_func(xdata, coeff): p_m = Figure(title= '', x_axis_label='Fiber ', y_axis_label = 'Median S/N', - plot_width = 500, plot_height = 240, + plot_width = 400, plot_height = 240, tools=[median_hover, "pan,box_zoom,reset,crosshair" ], toolbar_location='above') @@ -521,7 +521,7 @@ def fit_func(xdata, coeff): pltxy_h = 350 - pltxy_w = 500 + pltxy_w = 450 elg_plot.plot_height = pltxy_h elg_plot.plot_width = pltxy_w lrg_plot.plot_height = pltxy_h @@ -547,14 +547,13 @@ def fit_func(xdata, coeff): # Prepare tables comments='List of average SNR for the N target type'#, N is number of target types' metric_txt=mtable('snr', mergedqa, comments, objtype=objlist) - metric_tb=Div(text=metric_txt, width=500) + metric_tb=Div(text=metric_txt, width=350) alert_txt = alert_table(nrg,wrg) - alert_tb = Div(text=alert_txt, width=500) + alert_tb = Div(text=alert_txt, width=350) - - layout = column(row(widgetbox(info_col)), - row(widgetbox(metric_tb, alert_tb)), - row( column(Spacer(width=p_m.plot_width, height=140), p_m), p, cbar), - gridplot([plot_snr[0:2], plot_snr[2:4]]) - ) + layout = column(widgetbox(info_col, css_classes=["header"]), Div(), + widgetbox(metric_tb), widgetbox(alert_tb), + elg_plot, star_plot, + p_m, p, + css_classes=["display-grid"]) return file_html(layout, CDN, "MEDIAN SNR") diff --git a/backend/framework/qlf/dashboard/bokeh/qlf_plot.py b/backend/framework/qlf/dashboard/bokeh/qlf_plot.py index 0b14ca8d..c4268a5a 100644 --- a/backend/framework/qlf/dashboard/bokeh/qlf_plot.py +++ b/backend/framework/qlf/dashboard/bokeh/qlf_plot.py @@ -366,7 +366,7 @@ def mtable(qa, data, comments, objtype=['XXELG','XXSTAR']): """.format( key_tb[i], cur_tb[i], ref_tb[i]) print(cur_tb, ref_tb) - return style + title + header + tblines + end + return style + header + tblines + end diff --git a/backend/framework/qlf/dashboard/templates/dashboard/qa.html b/backend/framework/qlf/dashboard/templates/dashboard/qa.html index 96f863e4..8213799e 100644 --- a/backend/framework/qlf/dashboard/templates/dashboard/qa.html +++ b/backend/framework/qlf/dashboard/templates/dashboard/qa.html @@ -23,6 +23,7 @@ } .display-grid { + align-items: center; display: grid !important; grid-gap: 1rem; grid-template-columns: auto; @@ -48,20 +49,6 @@ "main"; } -.display-grid-skypeak { - display: grid !important; - grid-gap: 1rem; - grid-template-columns: auto; - width: auto !important; - height: auto !important; - justify-content: center; - justify-items: center; - grid-template-areas: - "header" - "table-ranges" - "main"; -} - .display-grid-countbins { display: grid !important; grid-gap: 1rem; @@ -90,20 +77,6 @@ "main"; } -.display-grid-skycont { - display: grid !important; - grid-gap: 1rem; - grid-template-columns: auto; - width: auto !important; - height: auto !important; - justify-content: center; - justify-items: center; - grid-template-areas: - "header" - "table-ranges" - "main"; -} - @media screen and (min-width: 1500px) { .display-grid-xwsigma { display: grid !important; @@ -117,20 +90,6 @@ } @media screen and (min-width: 1100px) { - .display-grid-skypeak { - display: grid !important; - grid-gap: 4em; - width: auto !important; - grid-template-columns: auto auto; - height: auto !important; - justify-content: center; - justify-items: center; - align-items: baseline; - grid-template-areas: - "header table-ranges" - "main main"; - } - .display-grid-countbins { display: grid !important; grid-gap: 4em; @@ -145,20 +104,6 @@ "main main"; } - .display-grid-skycont { - display: grid !important; - grid-gap: 4em; - width: auto !important; - grid-template-columns: auto auto; - height: auto !important; - justify-content: center; - justify-items: center; - align-items: center; - grid-template-areas: - "header table-ranges" - "main main"; - } - .display-grid-skyresid { display: grid !important; grid-gap: 4em;