Spaces:
Sleeping
Sleeping
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.",
|