import dash_html_components as html from dash.exceptions import PreventUpdate import plotly.express as px import plotly.graph_objs as go import pandas as pd from app import app from pos_tab import PosTab from data_parser import DataParser pos_tab = PosTab() data_parser = DataParser() df = data_parser.letters_to_df() pos_counts = data_parser.get_pos_counts() nn1_MF = data_parser.get_mfn_ratio() tag_MF = data_parser.get_mfn_tag() @app.callback(Output('pos_graph', 'figure'), [Input('pos_dropdown', 'value')]) def display_pos_graphs(selected_values): if selected_values is None: raise PreventUpdate else: mask = pos_counts['Tags'].isin(selected_values) fig = px.line( data_frame=pos_counts[mask].groupby(['Tags', 'Year']).mean().reset_index(), x="Year", y="PosCountNorm", range_y=[0,50], labels={