X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=resources%2Ftools%2Fdash%2Fapp%2Fpal%2Freport%2Freport.py;h=e4565731ec08579004bc7823d370427fd91ee712;hb=refs%2Fchanges%2F62%2F36762%2F2;hp=d22a0b6705a50110a83f50b50e1d26c6669b687f;hpb=b2cb835b34c7404b2aaee3ec30700c67537da66d;p=csit.git diff --git a/resources/tools/dash/app/pal/report/report.py b/resources/tools/dash/app/pal/report/report.py index d22a0b6705..e4565731ec 100644 --- a/resources/tools/dash/app/pal/report/report.py +++ b/resources/tools/dash/app/pal/report/report.py @@ -13,19 +13,13 @@ """Instantiate the Report Dash application. """ - import dash -from dash import dcc -from dash import html -from dash import dash_table -import numpy as np -import pandas as pd -from .data import create_dataframe -from .layout import html_layout +from ..utils.constants import Constants as C +from .layout import Layout -def init_report(server): +def init_report(server, releases): """Create a Plotly Dash dashboard. :param server: Flask server. @@ -36,41 +30,19 @@ def init_report(server): dash_app = dash.Dash( server=server, - routes_pathname_prefix=u"/report/", - external_stylesheets=[ - u"/static/dist/css/styles.css", - u"https://fonts.googleapis.com/css?family=Lato", - ], + routes_pathname_prefix=C.REPORT_ROUTES_PATHNAME_PREFIX, + external_stylesheets=C.EXTERNAL_STYLESHEETS ) - # Load DataFrame - df = create_dataframe() - - # Custom HTML layout - dash_app.index_string = html_layout - - # Create Layout - dash_app.layout = html.Div( - children=[ - create_data_table(df), - ], - id=u"dash-container", + layout = Layout( + app=dash_app, + releases=releases, + html_layout_file=C.REPORT_HTML_LAYOUT_FILE, + graph_layout_file=C.REPORT_GRAPH_LAYOUT_FILE, + data_spec_file=C.DATA_SPEC_FILE, + tooltip_file=C.TOOLTIP_FILE, ) - return dash_app.server - + dash_app.index_string = layout.html_layout + dash_app.layout = layout.add_content() -def create_data_table(df): - """Create Dash datatable from Pandas DataFrame. - - DEMO - """ - - table = dash_table.DataTable( - id=u"database-table", - columns=[{u"name": i, u"id": i} for i in df.columns], - data=df.to_dict(u"records"), - sort_action=u"native", - sort_mode=u"native", - page_size=5, - ) - return table + return dash_app.server