Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -124,6 +124,7 @@ def draw_venn(A, B, C, AB, AC, BC, ABC):
|
|
124 |
plt.figure(figsize=(10,10))
|
125 |
venn = venn3(subsets=(max(0, A - AB - AC + ABC), max(0,B - AB - BC + ABC), max(0,AB - ABC), max(0,C- AC - BC + ABC), max(AC - ABC, 0), max(BC - ABC,0), ABC), set_labels=('A', 'B', 'C'))
|
126 |
img = BytesIO()
|
|
|
127 |
plt.savefig(img, format='png')
|
128 |
img.seek(0)
|
129 |
image = Image.open(img)
|
@@ -133,12 +134,12 @@ def main(U, A, B, C, AB, AC, BC, ABC):
|
|
133 |
errors = validate_inputs(A, B, C, AB, AC, BC, ABC, U)
|
134 |
if errors:
|
135 |
return {"Errores de validación": errors}, None, None
|
136 |
-
|
137 |
-
suggestions = suggest_intersections(A, B, C, AB, AC, BC, ABC, U)
|
138 |
-
probabilities_df = calculate_probabilities(A, B, C, AB, AC, BC, ABC, U)
|
139 |
venn_image = draw_venn(A, B, C, AB, AC, BC, ABC)
|
|
|
|
|
140 |
|
141 |
-
return
|
142 |
|
143 |
# Gradio Interface
|
144 |
interface = gr.Interface(
|
@@ -154,9 +155,10 @@ interface = gr.Interface(
|
|
154 |
gr.Number(label="A ∩ B ∩ C")
|
155 |
],
|
156 |
outputs=[
|
157 |
-
gr.
|
158 |
gr.Dataframe(label="Tabla de Probabilidades"),
|
159 |
-
gr.
|
|
|
160 |
],
|
161 |
title="Calculadora de Probabilidades y Diagrama de Venn",
|
162 |
description="Calcula las probabilidades, intersecciones sugeridas y genera un diagrama de Venn.",
|
|
|
124 |
plt.figure(figsize=(10,10))
|
125 |
venn = venn3(subsets=(max(0, A - AB - AC + ABC), max(0,B - AB - BC + ABC), max(0,AB - ABC), max(0,C- AC - BC + ABC), max(AC - ABC, 0), max(BC - ABC,0), ABC), set_labels=('A', 'B', 'C'))
|
126 |
img = BytesIO()
|
127 |
+
plt.title(f"Diagrama de Venn U = {U}")
|
128 |
plt.savefig(img, format='png')
|
129 |
img.seek(0)
|
130 |
image = Image.open(img)
|
|
|
134 |
errors = validate_inputs(A, B, C, AB, AC, BC, ABC, U)
|
135 |
if errors:
|
136 |
return {"Errores de validación": errors}, None, None
|
137 |
+
|
|
|
|
|
138 |
venn_image = draw_venn(A, B, C, AB, AC, BC, ABC)
|
139 |
+
probabilities_df = calculate_probabilities(A, B, C, AB, AC, BC, ABC, U)
|
140 |
+
suggestions = suggest_intersections(A, B, C, AB, AC, BC, ABC, U)
|
141 |
|
142 |
+
return venn_image, probabilities_df,suggestions
|
143 |
|
144 |
# Gradio Interface
|
145 |
interface = gr.Interface(
|
|
|
155 |
gr.Number(label="A ∩ B ∩ C")
|
156 |
],
|
157 |
outputs=[
|
158 |
+
gr.Image(type="pil", label="Diagrama de Venn"),
|
159 |
gr.Dataframe(label="Tabla de Probabilidades"),
|
160 |
+
gr.JSON(label="Sugerencias de Intersección")
|
161 |
+
|
162 |
],
|
163 |
title="Calculadora de Probabilidades y Diagrama de Venn",
|
164 |
description="Calcula las probabilidades, intersecciones sugeridas y genera un diagrama de Venn.",
|