Visualizando un presupuesto municipal. Recuperando el paso.

Después de revisar un par de proyectos en D3 de diagramas sankey, y bucear en las dificultades de que los códigos de diagramas que conseguí están para la versión v3, pero las visualizaciones con más ejemplos son las de v5,  encontré que Sankeymatic tiene un excelente manual para poder personalizar todavía más los gráficos.

Gracias a unas pequeñas modificaciones, he conseguido generar un gráfico que tiene los flujos coloreados según el destino.  Después de sopesarlo, he decidido eliminar la cantidad de dinero (que se sigue reflejando en la proporción vertical del flujo). En la imagen interactiva generada con D3 aparece al pasar el cursor por encima.  Quizá se pueda añadir en otra visualización.  Sankeymatic me vuelve a dar esperanza.

sankeymatic_4800x6600

Lo que todavía no he conseguido es que ordene las partidas sin mezclar partidas, y esto obliga a pasar algo de tiempo reordenando los orígenes para hacerlas máslegibles.

Pero esto vuelve a tener buena pinta.

 

Anuncios

Visualizando un presupuesto municipal. Tropezando con D3

En el proceso de intentar visualizar de una forma más clara el diagrama de flujo, y dado que la web Sankeymatic no es todo lo flexible que necesito, he intentado conocer más de cerca el lenguaje de programación del motor visual que se usa (el dichoso D3) para intentar personalizarlo.

Gracias a repositiorios como wikitoki he encontrado un tutorial para hacer gráficos (Scatter)  con D3, pero me temo que todavía soy muy novato y la programación lleva su tiempo.

Mientras busco ejemplos de Sankey, he generado una visualización en SVG sin texto general. Los colores son los que asigna el motor por defecto.

Creo que es importante marcar una jerarquía de colores desde el inicio.

El problema son los cruces en los desgloses que salen automáticamente usando Sankeymatic por más que intento evitarlos.

Seguiremos.

sankeymatic_6000x6000

Visualizando un presupuesto municipal. Usando el color.

El siguiente paso a la segmentación de imágenes ha sido generar unos gráficos donde el color sirva para identificar orígenes de los ingresos.

He usado la paleta de colores por defecto que usa Sankeymatic (no muy indicadora, pero estamos probando). El motor deja colorear dependiendo del nodo de origen, y podemos usar la primera selección del destino como guía, porque sólo tiene dos niveles de nodo.  Además he reducido la anchura de los nodos para que la imagen quede más limpia.

El resultado quedaría tal que así.

Desglose inicial_800x800

El principal problema es no poder elegir los colores a desarrollar en las siguientes imágenes de desgloses, pero sobre todo, no poder elegir los colores de la imagen que muestra todo el gasto en conjunto, y que explicaría de un vistazo la proporción de dinero que viene de cada partida.

Trabajando en las partidas con más desgloses descubro que el motor de Sankeymatic dibuja los desgloses en un orden no controlable por el usuario.  Es necesario reposicionarlos luego.

Esto unido a que posiciona los textos a veces antes y a veces después del nodo, plantea mucho trabajo posterior a la generación de la imagen.  Como ejemplo, el desglose de transferencias corrientes una vez trabajado.

Transferencias Corrientes_1900x1000(3)

Parece que para avanzar más rápido la clave será investigar d3 para hacer los gráficos más personalizados, y además @numeroteca me pasa un ejemplo de diagrama de flujo con código abierto que puede ayudarme para generar más facilmente lo que se necesita.

Seguimos

El agua y la “propiedad”. Los Trileros privatizadores

¿Cómo hacen para saquear las arcas los recursos del estado?

¿Cómo consiguen privatizar tan fácilmente un bien común como es el agua?

Además de la explotación privada de manantiales naturales, (y que por lo tanto nos pertenecen a todos) es importante tomar conciencia de cómo el capitalismo necesita expandirse infinitamente mercantilizando todo lo que nos rodea.

El periodista Ricardo Gamaza recorre la provincia de Cádiz descubriendo los efectos de la privatización del agua en la ciudadanía. (Pero es muy fácil extrapolar a cualquier provincia del reino borbón).

Ingeniería empresarial y financiera, puertas giratorias, fraudes…

Un trabajo de investigación imprescindible para conocer las tramas de la privatización de un derecho humano esencial, el derecho al agua.

 

Tenemos que dar las gracias a Ganemos Jerez por impulsar este documental y fomentar la des-privatización de recursos comunes.

Cómo visualizar los contratos menores de un Ayuntamiento

Llevo un tiempo colaborando con numeroteca.org en el proyecto de SW libre para visualizar en conjunto los “contratos menores” municipales de forma interactiva, y me parece interesante compartir el método, a ver si se replica más y por más sitios.

Puede quedar tan chulo como esta de TODOS los contratos menores del Ayuntamiento de Valencia en 2015

Selección_005

Paso 1: Listado de contratos

Consiga que su ayuntamiento publique en una sola lista todos los contratos menores de  en un único documento. A ser posible, que sea con open data. Intente que la lista tenga al menos los siguientes campos:

  1. Centro de Gasto (Para saber quién lo gasta)
  2. Descripción Gasto (Para saber de qué trataba el contrato)
  3. Nombre Proveedor/a  (Para saber quién lo cobró )
  4. DNI/CIF Proveedor/a (Para saber exactamente quién lo cobró)
  5. Importe Adjudicación (Para saber cuánto se gastó)
  6. Fecha Adjudicación (Para calendarizarlo )

Si su ayuntamiento no publica esta información, presente una moción como ésta

Ejemplo de lista recopilatoria: Valencia

Bájese esa lista.

Paso 2: Refine la lista (opcional, aunque recomendable)

Como la lista suele estar generada de forma descuidada, hay muchos registros que no coinciden por abreviaturas, errores mínimos, espacios en blanco…..)

Usando el SW libre OpenRefine, limpie FACILMENTE la lista y unifique datos con designaciones parecidas bajo el mismo epígrafe.  Exporte el fichero resultante en formato “.tsv”. Para que el visualizador funcione, la primera fila de las columnas (header) debe llamarse:

  1. centro
  2. actividad
  3. quien
  4. dni
  5. importe
  6. date

En el ejemplo con muy pocos cliks, se eliminaron los espacios en blanco antes y después de cada celda;  se cambió la notación de los decimales, se modificó el header y se agruparon proveedores que aparecían con nombres diferentes (siempre que tuvieran el mismo CIF)

Para agrupar proveedores interesante usar el DNI en vez del nombre del proveedor, para evitar errores. Se pude dar el caso de que un grupo empresarial/empresa puede tener varios CIF. (Viajes el corte inglés, Informática el Corte Inglés…. etc). Es importante estar atentos a posibles agrupaciones posteriores.

Paso 3: Genere una “tabla dinámica”

Es una opción muy fácil con LibreOffice . Tan sólo hay que abrir el archivo con los datos refinados en este programa, y buscar en el menú “Insertar/tabla dinámica…”. Añada en el hueco “campos de fila” el campo “nombre del proveedor” y en el hueco “campos de datos” el campo importe ( clickando se puede elegir que haga la cuenta, además de la suma). Automáticamente se generará una tabla que suma  la cuantía de contratos de cada suministrador.

Selección_003

Para saber quién se ha llevado más dinero, una vez generada la tabla, seleccione una celda de la columna C y ordene los resultado con la opción del menú “Datos/Orden descendente”

En el ejemplo: Contratistas del Ayto de Valencia en 2016 que más importe han recibido

Top25Ayto2016

Paso 4: Generación de ficheros para la visualización

Para generar la visualización se necesitan los siguiente ficheros en formato “.tsv” (son pocos):

  1. data (fichero con el listado de contratos que hemos refinado (o no) con las columnas del paso 2)
  2. viplist (fichero usado para generar la primera fila de filtros, para filtrar por empresa)
  3. centroslist (fichero usado para generar la segunda fila de filtros, los centros de gasto)
  4. thinglist (fichero usado para generar la tercera fila de filtros, por descripción en el contrato)

El viplist puede incluir las empresas que suman mayor importe. El  centroslist es básicamente la columna del centro de gasto emisor, y el thinglist debería ser una forma de agrupar contratos por descripción (obras, mantenimiento…).  Para ello puede ser intersante observar las palabras que más aparecen en el campo descripción usando la herramienta web Wordcounter

Paso 5: Genere la visualización.

Póngase en contacto con el mantenedor de este proyecto y envíele los ficheros para ir ampliando las visualizaciones, o si es usuario de git, genere su propio fork local.

Para ello, le recomiendo el manual oficial de GIT o el GitHowTo, y este cliente de git para Windows

Paso 6: Disfrute del panorama.

Como ejemplo, la lista interactiva de:

o incluso de visualizaciones alternativas a contratos municipales como :

Si el lector está interesado en estos temas, le recomiendo pasar por la página de cualquier OCM, por ejemplo el OCM de Zaragoza.