Пример #1
0
import dash_html_components as html
from dash import no_update
import pandas as pd
import pyLDAvis
import pyLDAvis.gensim

from app import app
from topic_model import TopicModel
from data_parser import DataParser

data_parser = DataParser()
tm = TopicModel()
df = data_parser.letters_to_df()
pos_counts = data_parser.get_pos_counts()
rank_set, rank_list = data_parser.get_rank()
rel_set, rel_list = data_parser.get_relationship()
years_set = data_parser.get_years()
pos_tags = data_parser.get_pos_list()


# Callback for the slider element
@app.callback(
    Output('slider-output', 'children'
           ),  # Modified string with the years is passed to the Div-element
    Output(
        'slider-values', 'value'
    ),  # Unmodified list of the selected years is passed to the next callback 
    Input('time-slider', 'value'))
def set_cities_options(selected_years):
    years = 'Selected period: {start} - {end}'.format(start=selected_years[0],
                                                      end=selected_years[1])
Пример #2
0
         dcc.Dropdown(
             id = 'rank-filter',
             options = data_parser.get_rank()[1],
             value = list(data_parser.get_rank()[0]),
             multi = True
         )
     ]
 ),
 html.Br(),
 html.Div(
     children=[ 
         'Select letters based on the relationship between sender and recipient: ', 
         # Dash Dropdown component for selecting the relationship tag for filtering the data
         dcc.Dropdown(
             id = 'rel-filter',
             options = data_parser.get_relationship()[1],
             value = list(data_parser.get_relationship()[0]),
             multi = True
         )
     ]
 ),
 html.Br(),
 html.Div(
     children=[ 
         'Select time range for the letters to be used in the model: ', 
         # Dash Slider component for selecting the time range
         dcc.RangeSlider(
             id='time-slider',
             min=min(data_parser.get_years()),
             max=max(data_parser.get_years()),
             step=1,