anki-addons / src /presenter /addons_number_presenter.py
Ya-Alex's picture
Use BarPlot
f13f9a0
raw
history blame contribute delete
705 Bytes
from datetime import date
import pandas as pd
from gradio import BarPlot
from pandas import DataFrame
from src.dataset_data import DatasetData
class AddonsNumberPresenter:
def __init__(self, data: DatasetData):
self.__data = data
def present(self) -> BarPlot:
parquet_file_row_count: dict[date, int] = {day: len(df) for day, df in self.__data.get_parquet_dict().items()}
plot_df: DataFrame = pd.DataFrame.from_dict(parquet_file_row_count, orient="index").reset_index()
plot_df.columns = ["Date", "RowCount"]
plot_df["Date"] = plot_df["Date"].astype(str)
return BarPlot(plot_df, x="Date", y="RowCount", y_title="Addons number", y_lim=[0, None])