Esempio n. 1
0
def updateFigEmplStatus(states, years):
    if len(years) > 1:
        selectedExtendedDfsForYear1 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(usaData.dfsArray, 'index',
                                 ['EMPLOYMENT SECTOR']), 'state', states),
            'year', [years[0]])
        dfYear1 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear1])
        selectedExtendedDfsForYear2 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(usaData.dfsArray, 'index',
                                 ['EMPLOYMENT SECTOR']), 'state', states),
            'year', [years[1]])
        dfYear2 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear2])
        trace = go.Sunburst(
            ids=["20" + year for year in years] + [
                "20" + year + " - " + status for year in years
                for status in dfYear1.columns.tolist()
            ],
            labels=["20" + year for year in years] +
            [status for status in dfYear1.columns.tolist()] * 2,
            parents=["" for i in range(len(years))] + list(
                chain.from_iterable(
                    ("20" + year, "20" + year) for year in years)),
            values=[dfYear1.iloc[0, :].sum(), dfYear2.iloc[0, :].sum()] + [
                dfYear1.iloc[0, 0], dfYear1.iloc[0, 1], dfYear2.iloc[0, 0],
                dfYear2.iloc[0, 1]
            ],
            branchvalues="total",
        )
        return {
            'data': [trace],
            'layout': {
                'title': "EMPLOYMENT STATUS".title()
            }
        }
    else:
        selectedExtendedDfs = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(usaData.dfsArray, 'index',
                                 ['EMPLOYMENT SECTOR']), 'state', states),
            'year', [years[0]])
        df = dfs_sum([df['dataFrame'] for df in selectedExtendedDfs])
        trace = go.Pie(labels=df.columns.tolist(), values=df.iloc[0].tolist())
        return {
            'data': [trace],
            'layout': {
                'title': "EMPLOYMENT STATUS".title()
            }
        }
Esempio n. 2
0
def updateFigHealthIns(states, ageCateg, year):
    global layout, my_colors, my_line_colors
    layout1 = copy.deepcopy(layout)
    layout1['title'] = "Health Insurance Coverage".title()
    if len(year) > 1:
        selectedExtendedDfsForYear1 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']),
                    'state', states), "columns", ["POPULATION"]), 'year',
            [year[0]])
        selectedExtendedDfsForYear2 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']),
                    'state', states), "columns", ["POPULATION"]), 'year',
            [year[1]])
        dfYear1 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear1])
        dfYear2 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear2])
        trace1 = go.Bar(x=[index[:-1] for index in dfYear1.index.tolist()],
                        y=dfYear1.iloc[:, 0].tolist(),
                        name="20" + year[0],
                        marker_color=my_colors[0],
                        marker_line_color=my_line_colors[0],
                        marker_line_width=1.5,
                        opacity=0.6)
        trace2 = go.Bar(x=[index[:-1] for index in dfYear2.index.tolist()],
                        y=dfYear2.iloc[:, 0].tolist(),
                        name="20" + year[1],
                        marker_color=my_colors[1],
                        marker_line_color=my_line_colors[1],
                        marker_line_width=1.5,
                        opacity=0.6)
        return {'data': [trace1, trace2], 'layout': layout1}
    else:
        selectedExtendedDfs = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']),
                    'state', states), "columns", ["POPULATION"]), 'year',
            [year[0]])
        df = dfs_sum([df['dataFrame'] for df in selectedExtendedDfs])
        trace = go.Bar(x=[index[:-1] for index in df.index.tolist()],
                       y=df.iloc[:, 0].tolist(),
                       marker_color=my_colors[0],
                       marker_line_color=my_line_colors[0],
                       marker_line_width=1.5,
                       opacity=0.6)
        return {'data': [trace], 'layout': layout1}
Esempio n. 3
0
def updateFigEmplStatus(states, years):
    global layout, my_colors, my_line_colors
    my_colors1 = copy.deepcopy(my_colors).extend(my_line_colors)
    layout1 = copy.deepcopy(layout)
    layout1['title'] = "EMPLOYMENT STATUS".title()
    if len(years) > 1:
        selectedExtendedDfsForYear1 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(usaData.dfsArray, 'index',
                                 ['EMPLOYMENT SECTOR']), 'state', states),
            'year', [years[0]])
        dfYear1 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear1])
        selectedExtendedDfsForYear2 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(usaData.dfsArray, 'index',
                                 ['EMPLOYMENT SECTOR']), 'state', states),
            'year', [years[1]])
        dfYear2 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear2])
        trace = go.Sunburst(
            ids=["20" + year for year in years] + [
                "20" + year + " - " + status for year in years
                for status in dfYear1.columns.tolist()
            ],
            labels=["20" + year for year in years] +
            [status for status in dfYear1.columns.tolist()] * 2,
            parents=["" for i in range(len(years))] + list(
                chain.from_iterable(
                    ("20" + year, "20" + year) for year in years)),
            values=[dfYear1.iloc[0, :].sum(), dfYear2.iloc[0, :].sum()] + [
                dfYear1.iloc[0, 0], dfYear1.iloc[0, 1], dfYear2.iloc[0, 0],
                dfYear2.iloc[0, 1]
            ],
            branchvalues="total",
            marker=dict(colors=my_colors, autocolorscale=True))
        return {'data': [trace], 'layout': layout1}
    else:
        selectedExtendedDfs = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(usaData.dfsArray, 'index',
                                 ['EMPLOYMENT SECTOR']), 'state', states),
            'year', [years[0]])
        df = dfs_sum([df['dataFrame'] for df in selectedExtendedDfs])
        trace = go.Pie(labels=df.columns.tolist(),
                       values=df.iloc[0].tolist(),
                       marker_colors=my_colors,
                       hole=.3,
                       opacity=0.7)
        return {'data': [trace], 'layout': layout1}
Esempio n. 4
0
def updateFigEducEnvir(envir, disType):
    df = dfs_sum([educaEnvir[dis].df for dis in disType])
    if len(envir) == 1:
        trace = go.Pie(labels=df.index.values, values=df[envir[0]].tolist())
        return {
            'data': [trace],
            'layout': {
                'title':
                "Niveau d'éducation dans le monde " + envir[0].lower(),
            }
        }
    else:
        trace = go.Sunburst(
            ids=[env for env in envir] + [
                env + " - " + level for env in envir
                for level in df.index.values
            ],
            labels=[env
                    for env in envir] + [level
                                         for level in df.index.values] * 4,
            parents=["" for i in range(len(envir))] +
            list(chain.from_iterable((env, env, env, env) for env in envir)),
            values=[df[env].sum() for env in envir] +
            [df.loc[level][env] for env in envir for level in df.index.values],
            branchvalues="total",
        )
        return {
            'data': [trace],
            'layout': {
                'title': "Niveau d'éducation par environment",
            }
        }
Esempio n. 5
0
def updateFigEducEnvir(envir, disType):
    global layout, my_colors, my_line_colors
    my_colors1 = [
        'rgb(136, 207, 241)', 'rgb(249, 215, 214)', 'rgb(184, 235, 255)',
        'rgb(255, 184, 199)'
    ]
    layout1 = copy.deepcopy(layout)
    layout1['title'] = "Niveau d'éducation dans le monde " + envir[0].lower()
    df = dfs_sum([educaEnvir[dis].df for dis in disType])
    if len(envir) == 1:
        trace = go.Pie(labels=df.index.values,
                       values=df[envir[0]].tolist(),
                       marker_colors=my_colors1,
                       hole=.3,
                       opacity=0.7)
        return {'data': [trace], 'layout': layout1}
    else:
        layout1 = copy.deepcopy(layout)
        layout1['title'] = "Niveau d'éducation par environment"
        trace = go.Sunburst(
            ids=[env for env in envir] + [
                env + " - " + level for env in envir
                for level in df.index.values
            ],
            labels=[env
                    for env in envir] + [level
                                         for level in df.index.values] * 4,
            parents=["" for i in range(len(envir))] +
            list(chain.from_iterable((env, env, env, env) for env in envir)),
            values=[df[env].sum() for env in envir] +
            [df.loc[level][env] for env in envir for level in df.index.values],
            branchvalues="total",
            marker=dict(colors=my_colors, autocolorscale=True))
        return {'data': [trace], 'layout': layout1}
Esempio n. 6
0
def updateFigHealthIns(states, ageCateg, year):
    if len(year) > 1:
        selectedExtendedDfsForYear1 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']),
                    'state', states), "columns", ["POPULATION"]), 'year',
            [year[0]])
        selectedExtendedDfsForYear2 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']),
                    'state', states), "columns", ["POPULATION"]), 'year',
            [year[1]])
        dfYear1 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear1])
        dfYear2 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear2])
        trace1 = go.Bar(x=[index[:-1] for index in dfYear1.index.tolist()],
                        y=dfYear1.iloc[:, 0].tolist(),
                        name="20" + year[0])
        trace2 = go.Bar(x=[index[:-1] for index in dfYear2.index.tolist()],
                        y=dfYear2.iloc[:, 0].tolist(),
                        name="20" + year[1])
        return {
            'data': [trace1, trace2],
            'layout': {
                'title': "PREVALENCE OF INSURED DISABLED PEOPLE".title()
            }
        }
    else:
        selectedExtendedDfs = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']),
                    'state', states), "columns", ["POPULATION"]), 'year',
            [year[0]])
        df = dfs_sum([df['dataFrame'] for df in selectedExtendedDfs])
        trace = go.Bar(x=[index[:-1] for index in df.index.tolist()],
                       y=df.iloc[:, 0].tolist())
        return {
            'data': [trace],
            'layout': {
                'title': "PREVALENCE OF INSURED DISABLED PEOPLE".title()
            }
        }
Esempio n. 7
0
def updateFigActivityEnv(disType, envir):
    df = dfs_sum([actEnv[dis].df[envir] for dis in disType])
    if len(envir) == 1:
        trace = go.Bar(x=df.index.tolist(), y=df[envir[0]].tolist())
        return {'data': [trace], 'layout': {}}
    else:
        trace1 = go.Bar(name="urbain", x=df.index.tolist(), y=df["urbain"])
        trace2 = go.Bar(name="Rural", x=df.index.tolist(), y=df["Rural"])
        return {'data': [trace1, trace2], 'layout': {}}
Esempio n. 8
0
def updatePrevSexe(sexe):
    df = dfs_sum([
        illitAgeSexe[dis].df
        for dis in ["Sensoriel", "Chronique", "Moteur", "Mental"]
    ])
    trace = [
        go.Bar(x=[s for s in sexe],
               y=[df[s].sum() / df["Ensemble"].sum() for s in sexe])
    ]
    return {'data': trace, 'layout': {}}
Esempio n. 9
0
def updatePrevEnvir(envir):
    df = dfs_sum([
        illitSexeEnvir[dis].df
        for dis in ["Sensoriel", "Chronique", "Moteur", "Mental"]
    ])
    print(envir)
    trace = [
        go.Bar(x=[e for e in envir],
               y=[df.loc[e]["Ensemble"] / df["Ensemble"].sum() for e in envir])
    ]
    return {'data': trace, 'layout': {}}
Esempio n. 10
0
def updateFigAgeCateg(categories, sexe, disType):
    global categToAgeCateg
    df = dfs_sum([ageSexe04[dis].df[sexe] for dis in disType])
    start = df.index[0]
    end = categToAgeCateg[categories[1]]
    if len(sexe) == 1:
        trace = go.Bar(x=df.index.tolist()[categories[0]:categories[1]],
                       y=df[sexe[0]])
    else:
        trace = go.Bar(x=df.index.tolist()[categories[0]:categories[1]],
                       y=df["Masculin"] + df["Féminin"])
    return {'data': [trace], 'layout': {}}
Esempio n. 11
0
def updateFigMatri(statuses, sexe, disType):
    df = dfs_sum([sexeMatri04[dis].df for dis in disType]).loc[statuses]
    if len(sexe) == 1:
        trace = go.Pie(labels=statuses, values=df[sexe[0]].tolist())
    else:
        trace = go.Pie(labels=statuses,
                       values=(df["Masculin"] + df["Féminin"]).tolist())
    return {
        "data": [trace],
        'layout': {
            'title': "Prévalence selon la situation matrimoniale",
        }
    }
Esempio n. 12
0
def updateFigWorkExp(states, years):
    traces = []
    for year in years:
        selectedExtendedDfs = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(usaData.dfsArray, 'index',
                                 ['WORK EXPERIENCE']), 'state', states),
            'year', [year])
        df = dfs_sum([df['dataFrame'] for df in selectedExtendedDfs])
        traces.append(
            go.Bar(x=df.index.tolist(),
                   y=df.iloc[:, 0].tolist(),
                   name="20" + year))
    return {'data': traces, 'layout': {'title': "WORK EXPERIENCE".title()}}
Esempio n. 13
0
def updateFigIllitAge(sexe, disType):
    df = dfs_sum([illitAgeSexe[dis].df[sexe] for dis in disType])
    if len(sexe) == 1:
        trace = go.Bar(x=df.index.tolist(), y=df[sexe[0]])
        return {"data": [trace], "layout": {}}
    else:
        trace = [
            go.Bar(name="Masculin", x=df.index.tolist(), y=df["Masculin"]),
            go.Bar(name="Féminin", x=df.index.tolist(), y=df["Féminin"])
        ]
        return {
            "data": trace,
            "layout": {
                "barmode": 'stack',
            }
        }
Esempio n. 14
0
def updateFigIllit(sexe, disType, envir):
    df = dfs_sum([illitSexeEnvir[dis].df for dis in disType]).loc[envir][sexe]
    if len(sexe) == 1:
        trace = go.Pie(labels=envir,
                       values=df.loc[envir[0]].tolist() +
                       df.loc[envir[1]].tolist())
    else:
        trace = go.Sunburst(
            ids=[env for env in envir] +
            [env + " - " + sex for env in envir for sex in sexe],
            labels=[env for env in envir] + [sex for sex in sexe] * 2,
            parents=["" for i in range(len(envir))] +
            list(chain.from_iterable((env, env) for env in envir)),
            values=[df.loc[env].sum() for env in envir] +
            [df.loc[env][sex] for env in envir for sex in sexe],
            branchvalues="total",
        )

    return {'data': [trace], 'layout': {}}
Esempio n. 15
0
def updateFigIllit(sexe, disType, envir):
    global layout, my_colors, my_line_colors
    my_colors1 = copy.deepcopy(my_colors)
    my_colors1.append('rgb(199,255,184)')
    layout1 = copy.deepcopy(layout)
    layout1['title'] = "Analphabétisme par environnement "
    df = dfs_sum([illitSexeEnvir[dis].df for dis in disType]).loc[envir][sexe]
    if len(sexe) == 1:
        if len(envir) == 2:
            trace = go.Pie(labels=envir,
                           values=df.loc[envir[0]].tolist() +
                           df.loc[envir[1]].tolist(),
                           marker_colors=my_colors1,
                           hole=.3,
                           opacity=0.7)
        else:
            trace = trace = go.Pie(labels=sexe,
                                   values=df.loc[envir[0]].tolist(),
                                   marker_colors=my_colors1,
                                   hole=.3,
                                   opacity=0.7)
    else:
        if len(envir) == 2:
            trace = go.Sunburst(
                ids=[env for env in envir] +
                [env + " - " + sex for env in envir for sex in sexe],
                labels=[env for env in envir] + [sex for sex in sexe] * 2,
                parents=["" for i in range(len(envir))] +
                list(chain.from_iterable((env, env) for env in envir)),
                values=[df.loc[env].sum() for env in envir] +
                [df.loc[env][sex] for env in envir for sex in sexe],
                branchvalues="total",
                marker=dict(colors=my_colors, autocolorscale=True))
        else:
            layout1[
                'title'] = "Analphabétisme dans le monde " + envir[0].lower()
            trace = trace = go.Pie(labels=sexe,
                                   values=df.loc[envir[0]].tolist(),
                                   marker_colors=my_colors1,
                                   hole=.3,
                                   opacity=0.7)
    return {'data': [trace], 'layout': layout1}
Esempio n. 16
0
def updateFigWorkExp(states, years):
    global layout, my_colors
    layout1 = copy.deepcopy(layout)
    layout1['title'] = "WORK EXPERIENCE".title()

    traces = []
    for year in years:
        selectedExtendedDfs = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(usaData.dfsArray, 'index',
                                 ['WORK EXPERIENCE']), 'state', states),
            'year', [year])
        df = dfs_sum([df['dataFrame'] for df in selectedExtendedDfs])
        traces.append(
            go.Scatterpolar(r=df.iloc[:, 0],
                            theta=df.index,
                            fill='toself',
                            name=df.columns.tolist()[0] + ' (20' + year + ')',
                            line=dict(color=my_colors[years.index(year)])))
        layout1['polar'] = dict(radialaxis=dict(visible=True))
        layout1['showlegend'] = True
    return {'data': traces, 'layout': layout1}
Esempio n. 17
0
def updateFigIllitAge(sexe, disType):
    global layout, my_colors, my_line_colors
    my_colors1 = copy.deepcopy(my_colors)
    my_colors1.append('rgb(199,255,184)')
    my_line_colors1 = copy.deepcopy(my_line_colors)
    my_line_colors1.append('rgb(130,255,96)')
    layout1 = copy.deepcopy(layout)
    layout1['title'] = "Analphabétisme par catégories d'âge"
    layout1['barmode'] = 'stack'
    df = dfs_sum([illitAgeSexe[dis].df[sexe] for dis in disType])
    if len(sexe) == 1:
        trace = go.Bar(x=df.index.tolist(),
                       y=df[sexe[0]],
                       marker_color=my_colors1[0],
                       marker_line_color=my_line_colors1[0],
                       marker_line_width=1.5,
                       opacity=0.6)
        return {"data": [trace], "layout": layout1}
    else:
        trace = [
            go.Bar(name="Masculin",
                   x=df.index.tolist(),
                   y=df["Masculin"],
                   marker_color=my_colors1[0],
                   marker_line_color=my_line_colors1[0],
                   marker_line_width=1.5,
                   opacity=0.6),
            go.Bar(name="Féminin",
                   x=df.index.tolist(),
                   y=df["Féminin"],
                   marker_color=my_colors1[1],
                   marker_line_color=my_line_colors1[1],
                   marker_line_width=1.5,
                   opacity=0.6)
        ]
        return {
            "data": trace,
            "layout": layout1,
        }
Esempio n. 18
0
def updateFigMatri(statuses, sexe, disType):
    global layout, my_colors, my_line_colors
    my_colors1 = [
        'rgb(136, 207, 241)', 'rgb(255, 184, 199)', 'rgb(249, 215, 214)',
        'rgb(184, 235, 255)'
    ]
    layout1 = copy.deepcopy(layout)
    layout1['title'] = "Prévalence selon la situation matrimoniale"
    df = dfs_sum([sexeMatri04[dis].df for dis in disType]).loc[statuses]
    if len(sexe) == 1:
        trace = go.Pie(labels=statuses,
                       values=df[sexe[0]].tolist(),
                       marker_colors=my_colors1,
                       hole=.3,
                       opacity=0.7)
    else:
        trace = go.Pie(labels=statuses,
                       values=(df["Masculin"] + df["Féminin"]).tolist(),
                       marker_colors=my_colors1,
                       hole=.3,
                       opacity=0.7)
    return {"data": [trace], 'layout': layout1}
Esempio n. 19
0
def updateFigAgeCateg(categories, sexe, disType):
    global categToAgeCateg, layout, my_colors, my_line_colors
    layout1 = copy.deepcopy(layout)
    layout1['title'] = "Prévalence par catégories d'âge"
    df = dfs_sum([ageSexe04[dis].df[sexe] for dis in disType])
    start = df.index[0]
    end = categToAgeCateg[categories[1]]
    if len(sexe) == 1:
        trace = go.Bar(x=df.index.tolist()[categories[0]:categories[1]],
                       y=df[sexe[0]],
                       marker_color=my_colors[0],
                       marker_line_color=my_line_colors[0],
                       marker_line_width=1.5,
                       opacity=0.6)
    else:
        trace = go.Bar(x=df.index.tolist()[categories[0]:categories[1]],
                       y=df["Masculin"] + df["Féminin"],
                       marker_color=my_colors[0],
                       marker_line_color=my_line_colors[0],
                       marker_line_width=1.5,
                       opacity=0.6)
    return {'data': [trace], 'layout': layout1}
Esempio n. 20
0
def updateFigAgeDisNumber(states, ageCateg, year):
    if len(year) > 1:
        selectedExtendedDfsForYear1 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']),
                    'state', states), "columns", ["NUMBER OF DISABILITIES"]),
            'year', [year[0]])
        selectedExtendedDfsForYear2 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']),
                    'state', states), "columns", ["NUMBER OF DISABILITIES"]),
            'year', [year[1]])
        dfYear1 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear1])
        dfYear2 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear2])
        fig = make_subplots(rows=1,
                            cols=2,
                            subplot_titles=("20" + str(year[0]),
                                            "20" + str(year[1])))
        fig.add_trace(go.Bar(
            x=[index[:-1] for index in dfYear1.index.tolist()],
            y=dfYear1.iloc[:, 0].tolist(),
            name=dfYear1.columns.tolist()[0].title()),
                      row=1,
                      col=1)
        fig.add_trace(go.Bar(
            x=[index[:-1] for index in dfYear1.index.tolist()],
            y=dfYear1.iloc[:, 1].tolist(),
            name=dfYear1.columns.tolist()[1].title()),
                      row=1,
                      col=1)
        fig.add_trace(go.Bar(
            x=[index[:-1] for index in dfYear1.index.tolist()],
            y=dfYear2.iloc[:, 0].tolist(),
            name=dfYear2.columns.tolist()[0].title()),
                      row=1,
                      col=2)
        fig.add_trace(go.Bar(
            x=[index[:-1] for index in dfYear1.index.tolist()],
            y=dfYear2.iloc[:, 1].tolist(),
            name=dfYear2.columns.tolist()[1].title()),
                      row=1,
                      col=2)
        return fig

    else:
        selectedExtendedDfs = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']), 'state',
                states), "columns", ["NUMBER OF DISABILITIES"])
        df = dfs_sum([df['dataFrame'] for df in selectedExtendedDfs])
        trace1 = go.Bar(x=[index[:-1] for index in df.index.tolist()],
                        y=df.iloc[:, 0].tolist(),
                        name=df.columns.tolist()[0].title())
        trace2 = go.Bar(x=[index[:-1] for index in df.index.tolist()],
                        y=df.iloc[:, 1].tolist(),
                        name=df.columns.tolist()[1].title())

        return {
            'data': [trace1, trace2],
            'layout': {
                'title': "AGE BY NUMBER OF DISABILITIES".title()
            }
        }
Esempio n. 21
0
def updateFigAge(ageCateg, states, sex, difTypes, year):
    global layout, my_colors, my_line_colors
    layout1 = copy.deepcopy(layout)
    layout1['title'] = "PREVALENCE BY AGE".title()
    if len(year) == 1:
        selectedExtendedDfs = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['SEX']),
                    'state', states), 'difficulty', difTypes), 'year', year)
        df = dfs_sum([df['dataFrame'] for df in selectedExtendedDfs
                      ])[toolz.getAgeOptions(usaData.dfsArray, ageCateg)]
        if len(sex) == 2:
            trace1 = go.Bar(x=df.columns.tolist(),
                            y=df.loc["Male"].tolist(),
                            name='Male',
                            marker_color=my_colors[0],
                            marker_line_color=my_line_colors[0],
                            marker_line_width=1.5,
                            opacity=0.6)
            trace2 = go.Bar(x=df.columns.tolist(),
                            y=df.loc["Female"].tolist(),
                            name='Female',
                            marker_color=my_colors[1],
                            marker_line_color=my_line_colors[1],
                            marker_line_width=1.5,
                            opacity=0.6)
            return {'data': [trace1, trace2], 'layout': layout1}
        else:
            trace = go.Bar(x=df.columns.tolist(),
                           y=df.loc[sex[0].title()].tolist(),
                           name=sex[0].title(),
                           marker_color=my_colors[0],
                           marker_line_color=my_line_colors[0],
                           marker_line_width=1.5,
                           opacity=0.6)
            return {'data': [trace], 'layout': layout1}
    else:
        selectedExtendedDfsForYear1 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['SEX']),
                    'state', states), 'difficulty', difTypes), 'year',
            [year[0]])
        selectedExtendedDfsForYear2 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['SEX']),
                    'state', states), 'difficulty', difTypes), 'year',
            [year[1]])
        dfYear1 = dfs_sum([
            df['dataFrame'] for df in selectedExtendedDfsForYear1
        ])[toolz.getAgeOptions(usaData.dfsArray, ageCateg)]
        dfYear2 = dfs_sum([
            df['dataFrame'] for df in selectedExtendedDfsForYear2
        ])[toolz.getAgeOptions(usaData.dfsArray, ageCateg)]

        if len(sex) == 2:
            trace1 = go.Bar(x=dfYear1.columns.tolist(),
                            y=dfYear1.loc["Male"].tolist(),
                            name='Male (20' + year[0] + ")",
                            width=0.15,
                            marker_color=my_colors[0],
                            marker_line_color=my_line_colors[0],
                            marker_line_width=1.5,
                            opacity=0.6)
            trace2 = go.Bar(x=dfYear1.columns.tolist(),
                            y=dfYear1.loc["Female"].tolist(),
                            name='Female (20' + year[0] + ")",
                            width=0.15,
                            marker_color=my_colors[1],
                            marker_line_color=my_line_colors[1],
                            marker_line_width=1.5,
                            opacity=0.6)
            trace3 = go.Bar(x=dfYear1.columns.tolist(),
                            y=dfYear2.loc["Male"].tolist(),
                            name='Male (20' + year[1] + ")",
                            width=0.15,
                            marker_color=my_colors[0],
                            marker_line_color=my_line_colors[0],
                            marker_line_width=1.5,
                            opacity=0.6)
            trace4 = go.Bar(x=dfYear1.columns.tolist(),
                            y=dfYear2.loc["Female"].tolist(),
                            name='Female (20' + year[1] + ")",
                            width=0.15,
                            marker_color=my_colors[1],
                            marker_line_color=my_line_colors[1],
                            marker_line_width=1.5,
                            opacity=0.6)

            return {
                'data': [trace1, trace2, trace3, trace4],
                'layout': layout1
            }
        else:
            traces = [
                go.Bar(x=dfYear1.columns.tolist(),
                       y=dfYear1.loc[sex[0].title()].tolist(),
                       name=sex[0].title()),
                go.Bar(x=dfYear1.columns.tolist(),
                       y=dfYear2.loc[sex[0].title()].tolist(),
                       name=sex[0].title())
            ]
            traces = trace = [
                go.Bar(name="20" + year[0],
                       x=dfYear1.columns.tolist(),
                       y=dfYear1.loc[sex[0].title()].tolist(),
                       marker_color=my_colors[0],
                       marker_line_color=my_line_colors[0],
                       marker_line_width=1.5,
                       opacity=0.6),
                go.Bar(name="20" + year[1],
                       x=dfYear1.columns.tolist(),
                       y=dfYear2.loc[sex[0].title()],
                       marker_color=my_colors[1],
                       marker_line_color=my_line_colors[1],
                       marker_line_width=1.5,
                       opacity=0.6)
            ]
            return {'data': traces, 'layout': layout1}
Esempio n. 22
0
def updateFigAge(ageCateg, states, sex, difTypes, year):
    if len(year) == 1:
        selectedExtendedDfs = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['SEX']),
                    'state', states), 'difficulty', difTypes), 'year', year)
        df = dfs_sum([df['dataFrame'] for df in selectedExtendedDfs
                      ])[toolz.getAgeOptions(usaData.dfsArray, ageCateg)]
        if len(sex) == 2:
            trace1 = go.Bar(x=df.columns.tolist(),
                            y=df.loc["Male"].tolist(),
                            name='Male')
            trace2 = go.Bar(x=df.columns.tolist(),
                            y=df.loc["Female"].tolist(),
                            name='Female')
            return {
                'data': [trace1, trace2],
                'layout': {
                    'title': "PREVALENCE BY AGE".title()
                }
            }
        else:
            trace = go.Bar(x=df.columns.tolist(),
                           y=df.loc[sex[0].title()].tolist(),
                           name=sex[0].title())
            return {
                'data': [trace],
                'layout': {
                    'title': "PREVALENCE BY AGE".title()
                }
            }
    else:

        selectedExtendedDfsForYear1 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['SEX']),
                    'state', states), 'difficulty', difTypes), 'year',
            [year[0]])
        selectedExtendedDfsForYear2 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['SEX']),
                    'state', states), 'difficulty', difTypes), 'year',
            [year[1]])
        dfYear1 = dfs_sum([
            df['dataFrame'] for df in selectedExtendedDfsForYear1
        ])[toolz.getAgeOptions(usaData.dfsArray, ageCateg)]
        dfYear2 = dfs_sum([
            df['dataFrame'] for df in selectedExtendedDfsForYear2
        ])[toolz.getAgeOptions(usaData.dfsArray, ageCateg)]

        if len(sex) == 2:
            trace1 = go.Bar(x=dfYear1.columns.tolist(),
                            y=dfYear1.loc["Male"].tolist(),
                            name='Male (20' + year[0] + ")",
                            width=0.15)
            trace2 = go.Bar(x=dfYear1.columns.tolist(),
                            y=dfYear1.loc["Female"].tolist(),
                            name='Female (20' + year[0] + ")",
                            width=0.15)
            trace3 = go.Bar(x=dfYear1.columns.tolist(),
                            y=dfYear2.loc["Male"].tolist(),
                            name='Male (20' + year[1] + ")",
                            width=0.15)
            trace4 = go.Bar(x=dfYear1.columns.tolist(),
                            y=dfYear2.loc["Female"].tolist(),
                            name='Female (20' + year[1] + ")",
                            width=0.15)

            return {
                'data': [trace1, trace2, trace3, trace4],
                'layout': {
                    'title': "PREVALENCE BY AGE".title(),
                }
            }
        else:
            trace = go.Bar(x=df.columns.tolist(),
                           y=df.loc[sex[0].title()].tolist(),
                           name=sex[0].title())
            return {
                'data': [trace],
                'layout': {
                    'title': "PREVALENCE BY AGE".title()
                }
            }
Esempio n. 23
0
def updateFigAgeDisNumber(states, ageCateg, year):
    global layout, my_colors, my_line_colors
    layout1 = copy.deepcopy(layout)
    layout1['title'] = "Prevalence BY NUMBER OF DISABILITIES".title()
    if len(year) > 1:
        selectedExtendedDfsForYear1 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']),
                    'state', states), "columns", ["NUMBER OF DISABILITIES"]),
            'year', [year[0]])
        selectedExtendedDfsForYear2 = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']),
                    'state', states), "columns", ["NUMBER OF DISABILITIES"]),
            'year', [year[1]])
        dfYear1 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear1])
        dfYear2 = dfs_sum(
            [df['dataFrame'] for df in selectedExtendedDfsForYear2])
        fig = make_subplots(rows=1,
                            cols=2,
                            subplot_titles=("20" + str(year[0]),
                                            "20" + str(year[1])))
        fig.add_trace(go.Bar(
            x=[index[:-1] for index in dfYear1.index.tolist()],
            y=dfYear1.iloc[:, 0].tolist(),
            name=dfYear1.columns.tolist()[0].title(),
            marker_color=my_colors[0],
            marker_line_color=my_line_colors[0],
            marker_line_width=1.5,
            opacity=0.6),
                      row=1,
                      col=1)
        fig.add_trace(go.Bar(
            x=[index[:-1] for index in dfYear1.index.tolist()],
            y=dfYear1.iloc[:, 1].tolist(),
            name=dfYear1.columns.tolist()[1].title(),
            marker_color=my_colors[1],
            marker_line_color=my_line_colors[1],
            marker_line_width=1.5,
            opacity=0.6),
                      row=1,
                      col=1)
        fig.add_trace(go.Bar(
            x=[index[:-1] for index in dfYear2.index.tolist()],
            y=dfYear2.iloc[:, 0].tolist(),
            name=dfYear2.columns.tolist()[0].title(),
            marker_color=my_colors[0],
            marker_line_color=my_line_colors[0],
            marker_line_width=1.5,
            opacity=0.6,
            showlegend=False),
                      row=1,
                      col=2)
        fig.add_trace(go.Bar(
            x=[index[:-1] for index in dfYear2.index.tolist()],
            y=dfYear2.iloc[:, 1].tolist(),
            name=dfYear2.columns.tolist()[1].title(),
            marker_color=my_colors[1],
            marker_line_color=my_line_colors[1],
            marker_line_width=1.5,
            opacity=0.6,
            showlegend=False),
                      row=1,
                      col=2)
        fig.update_layout(barmode='stack')
        fig.update_layout(autosize=True)
        fig.update_layout(margin=dict(l=30, r=30, b=20, t=40))
        fig.update_layout(hovermode="closest")
        fig.update_layout(plot_bgcolor="#F9F9F9")
        fig.update_layout(paper_bgcolor="#F9F9F9")
        fig.update_layout(legend=dict(font=dict(size=10), orientation="h"))
        fig.update_layout(yaxis=go.YAxis(showticklabels=False))
        fig.update_layout(
            title=dict(text='Prevalence By Number Of Disabilities',
                       x=0.5,
                       xanchor='center'))
        return fig

    else:
        selectedExtendedDfs = toolz.dfSelector(
            toolz.dfSelector(
                toolz.dfSelector(
                    toolz.dfSelector(usaData.dfsArray, 'index', ['AGE']),
                    'state', states), "columns", ["NUMBER OF DISABILITIES"]),
            'year', [year[0]])
        df = dfs_sum([df['dataFrame'] for df in selectedExtendedDfs])
        trace1 = go.Bar(x=[index[:-1] for index in df.index.tolist()],
                        y=df.iloc[:, 0].tolist(),
                        name=df.columns.tolist()[0].title(),
                        marker_color=my_colors[0],
                        marker_line_color=my_line_colors[0],
                        marker_line_width=1.5,
                        opacity=0.6)
        trace2 = go.Bar(x=[index[:-1] for index in df.index.tolist()],
                        y=df.iloc[:, 1].tolist(),
                        name=df.columns.tolist()[1].title(),
                        marker_color=my_colors[1],
                        marker_line_color=my_line_colors[1],
                        marker_line_width=1.5,
                        opacity=0.6)

        return {'data': [trace1, trace2], 'layout': layout1}