Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dev test03 #183

Merged
merged 4 commits into from
Nov 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 6 additions & 16 deletions configs/configuraciones_generales_2019_m1.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -94,19 +94,9 @@ filtro_latlong_bbox:

# Zonificaciones
zonificaciones:
geo1: "coronas.geojson"
var1: "Corona"
geo1: "partidos.geojson"
var1: "Partido"
orden1: [
"CABA",
"Primer cordón",
"Segundo cordón",
"Tercer cordón",
"RMBA",
]

geo2: "partidos.geojson"
var2: "Partido"
orden2: [
"Comuna 1",
"Comuna 2",
"Comuna 3",
Expand Down Expand Up @@ -172,9 +162,9 @@ zonificaciones:
"Zárate",
]

geo3: "partidos.geojson"
var3: "Zona"
orden3: [
geo2: "partidos.geojson"
var2: "Zona"
orden2: [
"CABA",
"Sur",
"Oeste",
Expand All @@ -190,7 +180,7 @@ zonificaciones:
var5:
orden5:

poligonos: # Especificar una capa geográfica de polígonos en formato .geojson. El archivo requiere las siguientes columnas: ['id', 'tipo', 'geometry']. 'id' es el id o nombre del polígono, tipo puede ser 'poligono' o 'cuenca'.
poligonos: "poligonos.geojson" # Especificar una capa geográfica de polígonos en formato .geojson. El archivo requiere las siguientes columnas: ['id', 'tipo', 'geometry']. 'id' es el id o nombre del polígono, tipo puede ser 'poligono' o 'cuenca'.

tiempos_viaje_estaciones: # Especificar una tabla de tiempo de viaje en minutos entre estaciones para modos sin gps

35 changes: 31 additions & 4 deletions urbantrips/dashboard/dash_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ def leer_configs_generales():
return config


def leer_alias(tipo='data'):
def leer_alias(tipo='dash'):
"""
Esta funcion toma un tipo de datos (data o insumos)
y devuelve el alias seteado en el archivo de congifuracion
Expand All @@ -53,7 +53,7 @@ def leer_alias(tipo='data'):
return alias


def traigo_db_path(tipo='data'):
def traigo_db_path(tipo='dash'):
"""
Esta funcion toma un tipo de datos (data o insumos)
y devuelve el path a una base de datos con esa informacion
Expand All @@ -62,12 +62,13 @@ def traigo_db_path(tipo='data'):
raise ValueError('tipo invalido: %s' % tipo)

alias = leer_alias(tipo)

db_path = os.path.join("data", "db", f"{alias}{tipo}.sqlite")

return db_path


def iniciar_conexion_db(tipo='data'):
def iniciar_conexion_db(tipo='dash'):
""""
Esta funcion toma un tipo de datos (data o insumos)
y devuelve una conexion sqlite a la db
Expand All @@ -76,6 +77,7 @@ def iniciar_conexion_db(tipo='data'):
assert os.path.isfile(
db_path), f'No existe la base de datos para el dashboard en {db_path}'
conn = sqlite3.connect(db_path, timeout=10)

return conn

# Calculate weighted mean, handling division by zero or empty inputs
Expand Down Expand Up @@ -597,4 +599,29 @@ def bring_latlon():
latlon = [lat, lon]
except:
latlon = [-34.593, -58.451]
return latlon
return latlon

@st.cache_data
def traigo_zonas_values(tipo = 'etapas'):

if tipo == 'etapas':
table = 'agg_etapas'
else:
table = 'poly_etapas'


query = f"""
SELECT DISTINCT zona, inicio_norm FROM {table}
UNION
SELECT DISTINCT zona, transfer1_norm FROM {table}
UNION
SELECT DISTINCT zona, transfer2_norm FROM {table}
UNION
SELECT DISTINCT zona, fin_norm FROM {table};
"""
zonas_values = etapas=levanto_tabla_sql(table, 'dash', query)
zonas_values = zonas_values[(zonas_values.inicio_norm!='')&
(zonas_values.inicio_norm.notna())&
(zonas_values.inicio_norm!=' (cuenca)')].sort_values(['zona', 'inicio_norm']).rename(columns={'inicio_norm':'Nombre'})

return zonas_values
Loading
Loading