import matplotlib matplotlib.use('Agg') import matplotlib.pyplot as plt import numpy as np import gradio as gr def sales_projections(employee_data): sales_data = employee_data.iloc[:, 1:4].astype("int").to_numpy() regression_values = np.apply_along_axis( lambda row: np.array(np.poly1d(np.polyfit([0, 1, 2], row, 2))), 0, sales_data ) projected_months = np.repeat( np.expand_dims(np.arange(3, 12), 0), len(sales_data), axis=0 ) projected_values = np.array( [ month * month * regression[0] + month * regression[1] + regression[2] for month, regression in zip(projected_months, regression_values) ] ) plt.plot(projected_values.T) plt.legend(employee_data["Name"]) return employee_data, plt.gcf(), regression_values demo = gr.Blocks() with demo: with gr.Tabs(): with gr.TabItem("Greedy Search"): gr.Button("New Lion") with gr.TabItem("Sample"): gr.Button("New Tiger") with gr.TabItem("Beam Search"): gr.Button("New Tiger") with gr.TabItem("Benchmark Information"): gr.Dataframe( headers=["Name", "Jan Sales", "Feb Sales", "Mar Sales"], value=[["Jon", 12, 14, 18], ["Alice", 14, 17, 2], ["Sana", 8, 9.5, 12]], ) demo.launch()