Spaces:
Running
Running
Commit
路
39eafab
1
Parent(s):
8b0263d
Improve Heatmap Legend
Browse files
app.py
CHANGED
@@ -2,7 +2,7 @@ import streamlit as st
|
|
2 |
import pandas as pd
|
3 |
import numpy as np
|
4 |
from bokeh.plotting import figure
|
5 |
-
from bokeh.models import ColumnDataSource, DataTable, TableColumn, CustomJS, Select, Button, HoverTool, LinearColorMapper, ColorBar, FuncTickFormatter
|
6 |
from bokeh.layouts import column
|
7 |
from bokeh.palettes import Reds9, Blues9, Oranges9, Purples9, Greys9, BuGn9, Greens9
|
8 |
from sklearn.decomposition import PCA
|
@@ -1098,7 +1098,7 @@ def run_model(model_name):
|
|
1098 |
# Si la variable seleccionada no es num茅rica, la convertimos a c贸digos num茅ricos
|
1099 |
# y guardamos la correspondencia para la leyenda.
|
1100 |
cat_mapping = None
|
1101 |
-
if not pd.api.types.is_numeric_dtype(df_heatmap[selected_feature]):
|
1102 |
cat = df_heatmap[selected_feature].astype('category')
|
1103 |
cat_mapping = list(cat.cat.categories)
|
1104 |
df_heatmap[selected_feature] = cat.cat.codes
|
@@ -1139,7 +1139,11 @@ def run_model(model_name):
|
|
1139 |
color_bar = ColorBar(color_mapper=color_mapper, location=(0, 0))
|
1140 |
# Si se us贸 conversi贸n a categor铆a, formateamos la barra para mostrar las etiquetas originales
|
1141 |
if cat_mapping is not None:
|
1142 |
-
|
|
|
|
|
|
|
|
|
1143 |
categories_json = json.dumps(cat_mapping)
|
1144 |
color_bar.formatter = FuncTickFormatter(code=f"""
|
1145 |
var categories = {categories_json};
|
|
|
2 |
import pandas as pd
|
3 |
import numpy as np
|
4 |
from bokeh.plotting import figure
|
5 |
+
from bokeh.models import ColumnDataSource, DataTable, TableColumn, CustomJS, Select, Button, HoverTool, LinearColorMapper, ColorBar, FuncTickFormatter, FixedTicker
|
6 |
from bokeh.layouts import column
|
7 |
from bokeh.palettes import Reds9, Blues9, Oranges9, Purples9, Greys9, BuGn9, Greens9
|
8 |
from sklearn.decomposition import PCA
|
|
|
1098 |
# Si la variable seleccionada no es num茅rica, la convertimos a c贸digos num茅ricos
|
1099 |
# y guardamos la correspondencia para la leyenda.
|
1100 |
cat_mapping = None
|
1101 |
+
if df_heatmap[selected_feature].dtype == bool or not pd.api.types.is_numeric_dtype(df_heatmap[selected_feature]):
|
1102 |
cat = df_heatmap[selected_feature].astype('category')
|
1103 |
cat_mapping = list(cat.cat.categories)
|
1104 |
df_heatmap[selected_feature] = cat.cat.codes
|
|
|
1139 |
color_bar = ColorBar(color_mapper=color_mapper, location=(0, 0))
|
1140 |
# Si se us贸 conversi贸n a categor铆a, formateamos la barra para mostrar las etiquetas originales
|
1141 |
if cat_mapping is not None:
|
1142 |
+
|
1143 |
+
# Creamos ticks fijos solo para cada categor铆a
|
1144 |
+
ticks = list(range(len(cat_mapping)))
|
1145 |
+
color_bar.ticker = FixedTicker(ticks=ticks)
|
1146 |
+
|
1147 |
categories_json = json.dumps(cat_mapping)
|
1148 |
color_bar.formatter = FuncTickFormatter(code=f"""
|
1149 |
var categories = {categories_json};
|