Spaces:
Build error
Build error
File size: 2,784 Bytes
a87a8d3 2382276 a87a8d3 2382276 a87a8d3 2382276 a87a8d3 2382276 a87a8d3 2382276 a87a8d3 2382276 a87a8d3 2382276 a87a8d3 2382276 a87a8d3 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | import gradio as gr
import pandas as pd
import matplotlib
import matplotlib.pyplot as plt
import altair as alt
import numpy as np
# documentation: https://www.gradio.app/guides/quickstart
# to use the reload mode use the Gradio cli in the terminal: gradio.exe app.py
def limit_analysis_to_12_months(input_lst):
if len(input_lst)>12:
input_lst = input_lst[:12]
else:
input_lst += [0] * (12 - len(input_lst))
return input_lst
def greet(Identite, revenus, depenses, epargne, dettes, is_ratio=False, is_graphe=True ):
# Revenus et Depenses
revenus = [float(rev.strip()) for rev in revenus.split(sep=',')]
revenus = limit_analysis_to_12_months(revenus)
depenses = [float(dep.strip()) for dep in depenses.split(sep=',')]
depenses = limit_analysis_to_12_months(depenses)
# Pandas DataFrame
mois = [
"janvier", "février", "mars",
"avril", "mai", "juin",
"juillet", "août", "septembre",
"octobre", "novembre", "décembre"
]
data = {'Mois': mois, 'Revenus': revenus, 'Depenses': depenses}
df = pd.DataFrame(data)
df['Cash_Flow'] = df['Revenus'] - df['Depenses']
df['Epargne'] = df['Cash_Flow'].cumsum()
#gr.DataFrame(get_data, every=5)
#Plot
#fig = plt.figure()
#plt.plot(df['Mois'], df['Cash_Flow'])
#plt.plot(df, x='Mois', y='Revenus')
#plt.title("Big TITLE")
lplot1 = gr.LinePlot(df, x="Mois", y="Revenus")
lplot2 = gr.LinePlot(df, x="Mois", y="Depenses")
return "Guten Tag " + Identite + "!", df, lplot1, lplot2
demo = gr.Interface(
fn=greet,
inputs=[gr.Textbox('John Doe', info='Rentrez votre prénom et votre nom', label='Identite'),
gr.Textbox('4123, 4566, 5667, 5322, 5600, 5800, 5200, 6050, 5400, 5700, 5900, 6400', info='Rentrez vos revenus des 12 derniers mois séparés par une virgule', label='Revenus'),
gr.Textbox('3123, 4500, 5000, 5200, 5500, 4100, 6400, 5950, 5900, 5800, 5600, 5990', info='Rentrez vos dépenses des 12 derniers mois séparées par une virgule', label='Dépenses'),
gr.Slider(0, 1_000_000, info='Indiquez votre épargne entre 0 et 1 million', label="Épargne"),
gr.Slider(0, 1_000_000, info='Indiquez vos dettes entre 0 et 1 million', label='Dettes'),
gr.Checkbox(False, info='Voulez-vous afficher vos ratios financiers?', label='Ratios'),
gr.Checkbox(True, info='Voulez-vous afficher le graphe de vos finances?', label='Graphe')],
outputs=["text", gr.DataFrame(), gr.LinePlot(), gr.LinePlot()],
)
"""
# Display()
if display_graph:
df.plot(x='Mois', y=['Revenus', 'Depenses', 'Cash_Flow', 'Epargne'], marker='o', color=['green', 'red', 'cyan', 'blue'], ylabel='Euros', rot=30)
else:
pass
"""
demo.launch()
|