Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -41,6 +41,12 @@ def create_plot(data, x_col, y_col, plot_type):
|
|
| 41 |
|
| 42 |
if plot_type == "Barras":
|
| 43 |
sns.barplot(x=x_col, y=y_col, data=data, ax=ax)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 44 |
elif plot_type == "Líneas":
|
| 45 |
sns.lineplot(x=x_col, y=y_col, data=data, ax=ax)
|
| 46 |
elif plot_type == "Dispersión":
|
|
@@ -100,7 +106,7 @@ def main():
|
|
| 100 |
with col1:
|
| 101 |
plot_type = st.selectbox(
|
| 102 |
"Tipo de gráfico",
|
| 103 |
-
["Barras", "Líneas", "Dispersión", "Histograma", "Boxplot", "Violín", "Pastel", "Mapa de calor"]
|
| 104 |
)
|
| 105 |
|
| 106 |
# Opciones de columnas basadas en el tipo de gráfico
|
|
@@ -118,12 +124,15 @@ def main():
|
|
| 118 |
elif plot_type == "Pastel":
|
| 119 |
x_col = st.selectbox("Selecciona la columna para el gráfico de pastel", categorical_cols if categorical_cols else all_cols)
|
| 120 |
y_col = None
|
|
|
|
|
|
|
|
|
|
| 121 |
else:
|
| 122 |
x_options = categorical_cols + numeric_cols if categorical_cols else all_cols
|
| 123 |
x_col = st.selectbox("Selecciona la columna para el eje X", x_options)
|
| 124 |
|
| 125 |
with col3:
|
| 126 |
-
if plot_type not in ["Histograma", "Pastel", "Mapa de calor"]:
|
| 127 |
y_col = st.selectbox("Selecciona la columna para el eje Y", numeric_cols if numeric_cols else all_cols)
|
| 128 |
|
| 129 |
# Crear gráfico
|
|
|
|
| 41 |
|
| 42 |
if plot_type == "Barras":
|
| 43 |
sns.barplot(x=x_col, y=y_col, data=data, ax=ax)
|
| 44 |
+
elif plot_type == "Barras (Count)":
|
| 45 |
+
# Crear conteo de valores
|
| 46 |
+
count_data = data[x_col].value_counts().reset_index()
|
| 47 |
+
count_data.columns = [x_col, 'count']
|
| 48 |
+
sns.barplot(x=x_col, y='count', data=count_data, ax=ax)
|
| 49 |
+
plt.ylabel('Frecuencia')
|
| 50 |
elif plot_type == "Líneas":
|
| 51 |
sns.lineplot(x=x_col, y=y_col, data=data, ax=ax)
|
| 52 |
elif plot_type == "Dispersión":
|
|
|
|
| 106 |
with col1:
|
| 107 |
plot_type = st.selectbox(
|
| 108 |
"Tipo de gráfico",
|
| 109 |
+
["Barras", "Barras (Count)", "Líneas", "Dispersión", "Histograma", "Boxplot", "Violín", "Pastel", "Mapa de calor"]
|
| 110 |
)
|
| 111 |
|
| 112 |
# Opciones de columnas basadas en el tipo de gráfico
|
|
|
|
| 124 |
elif plot_type == "Pastel":
|
| 125 |
x_col = st.selectbox("Selecciona la columna para el gráfico de pastel", categorical_cols if categorical_cols else all_cols)
|
| 126 |
y_col = None
|
| 127 |
+
elif plot_type == "Barras (Count)":
|
| 128 |
+
x_col = st.selectbox("Selecciona la columna para contar frecuencias", all_cols)
|
| 129 |
+
y_col = "count" # Valor especial para indicar que se usará conteo
|
| 130 |
else:
|
| 131 |
x_options = categorical_cols + numeric_cols if categorical_cols else all_cols
|
| 132 |
x_col = st.selectbox("Selecciona la columna para el eje X", x_options)
|
| 133 |
|
| 134 |
with col3:
|
| 135 |
+
if plot_type not in ["Histograma", "Pastel", "Mapa de calor", "Barras (Count)"]:
|
| 136 |
y_col = st.selectbox("Selecciona la columna para el eje Y", numeric_cols if numeric_cols else all_cols)
|
| 137 |
|
| 138 |
# Crear gráfico
|