예제 #1
0
    def callback(self, *args, **kwargs) -> List[Any]:
        """Renders the parameter dependent plots and tables
        """
        pars = kwargs["pars"]

        if kwargs["show_additional_projections"]:
            title = self.content["infected-v-revovered-title"]

            time_evolution = self._build_frame(**kwargs)

            time_evolution_data = plot_dataframe(
                time_evolution.drop(columns=self.content["susceptible"]),
                max_y_axis=pars.max_y_axis,
            )

            children = [
                H4(title, id="infected-v-revovered-title"),
                Graph(figure=time_evolution_data,
                      id="infected-v-revovered-graph"),
            ]

            if kwargs["show_tables"]:
                if kwargs["as_date"]:
                    time_evolution.index = time_evolution.index.strftime(
                        "%b, %d")
                time_evolution_table_data = (df_to_html_table(
                    time_evolution, data_only=True, n_mod=7)
                                             if kwargs["show_tables"] else {})
                children.append(
                    Table(time_evolution_table_data,
                          id="infected-v-revovered-table"))

        else:
            children = []

        return [children]
예제 #2
0
def create_header(idx: str, content: Dict[str, str]):
    """
    Create heading element using localization map
    """
    return H4(id=idx, children=content[idx])
예제 #3
0
shops = prices_df.shop.unique()
shops = np.append(shops, ["All"])



#TODO:
#Dropdown limit

today = date.today().strftime("%Y-%m-%d")
prices_today = prices_df[prices_df['date']==today]
fig = px.bar(prices_today, x='name', y='price',title="Product Prices")

bars_page = [
    Container([
      H1('Bar plot'),
      H4('Select Date'),
      dcc.Dropdown(
        id='dateDropdown',
        options=[{'label': i, 'value': i} for i in dates],
        value=[i for i in dates]),
        
      H4('Select shop'),
      dcc.Dropdown(
        id='shopDropdown',
        options=[{'label': i, 'value': i} for i in shops],
        value=[i for i in shops]),

    H4('Select type of product'),
      dcc.Dropdown(
        id='productDropdown',
        ),
def create_header(idx: str, content: Dict[str, str]):
    """
    Create heading element using localization map
    """
    HEADER_STYLE = {"font-size": "1rem"}
    return H4(id=idx, children=content[idx], style=HEADER_STYLE)
예제 #5
0
prices_df = pd.read_csv(__prices_file)
names = prices_df["name"].unique()
names = names[1:20]

shops = prices_df.shop.unique()

selected = dot({'shop': None, 'kind': None})
#TODO:
#Dropdown limit
#Shop dropdown?
#Line
evolution_page = [
    Container([
        H1('Evolution'),
        H4('Select product'),
        P("Shop"),
        dcc.Dropdown(id='shopEvo',
                     options=[{
                         'label': i,
                         'value': i
                     } for i in shops],
                     value=[i for i in shops],
                     placeholder="Shop"),
        P("Kind"),
        dcc.Dropdown(id='productEvo', ),
        Button("Load Products", id="LoadNamesEvo", n_clicks=0),
        P("Product name"),
        dcc.Dropdown(id='evolutionDropdown', ),
        dcc.Graph(id="evolutionGraph")
    ],
예제 #6
0
from dash.dependencies import Output as DOutput
from dotmap import DotMap as dot
import pandas as pd
import dash_table
import datetime as date
import dash_core_components as dcc

__prices_file = 'csv/prices.csv'

prices_df = pd.read_csv(__prices_file)
productOptions = prices_df.kind.unique()

table_page = [
    Container([
        H1('Table'),
        H4('Select type of product'),
        dcc.Dropdown(id='productDropdown',
                     options=[{
                         'label': i,
                         'value': i
                     } for i in productOptions],
                     value=[i for i in productOptions]),
        dash_table.DataTable(columns=[{
            'name': 'Name',
            'id': 'name',
            'type': 'text'
        }, {
            'name': 'Kind',
            'id': 'kind',
            'type': 'text'
        }, {
예제 #7
0
selectedTwo   = dot({
    'shop':         None,
    'kind':         None
})

__prices_file = 'csv/prices.csv'

prices_df = pd.read_csv(__prices_file)
names = prices_df["name"].unique()
shops = prices_df.shop.unique()

comp_page = [
    Container([
    H1('Comparator'),
    #First Product
    H4('Select first product'),
    P("Shop"),
    dcc.Dropdown(
        id='shopCompOne',
        options=[{'label': i, 'value': i} for i in shops],
        value=[i for i in shops],
        placeholder="Shop"),
    P("Kind"),
      dcc.Dropdown(
        id='productCompOne',
        ),
    Button("Load Products", id="LoadNamesCompOne", n_clicks=0),
    P("Product name"),
    dcc.Dropdown(
        id='nameCompOne',),
    #Second Product