Archive

Archive for the ‘visualization’ Category

visualitzant Sant Jordi 2013

bé, feia temps que no escribiem res en aquest blog; aprofitarem la setmana de la Big Data Week 2013 per penjar un dels experiments que hem fet per visualitzar l’activitat relacionada amb Sant Jordi a Twitter, a partir d’una idea de la gent de Lletra

la idea era visualitzar tuits amb l’estructura següent

#perSantJordiRegalo "llibre" d'autor ...

és a dir, un hashtag i el títol d’un llibre entre cometes, per saber una mica quins són els llibres que la comunitat de tuiteros al voltant de Lletra creu que són més “regalables”.

El projecte té dues parts:

  1. Captura i preprocessat dels tuits: això ho vàrem fer en Python utilitzant la llibreria tweetstream, una delícia per fer cosetes senzilletes; aquest script generava un  fitxer CSV amb l’autor del tuit, el tuit pròpiament dit i el llibre entre cometes que apareixia al tuit, eliminant els tuits on no es podés identificar un llibre.
  2. Visualitzar els tuits amb D3.js, un repte personal perquè és una llibreria d’una potència brutal però que costa una mica d’aprendre a usar, cal canviar el xip respecte a la programació estructurada clàssica.

El script, molt senzillet, el podeu trobar aquí. El principal problema és que els tuits dels usuaris poden tenir comes (,) i clar, els CSV van separats per comes. Aleshores cal tancar els tuits entre cometes (“), però clar, resulta que el llibre també havia d’anar entre cometes, així que cal substituir primer les cometes del llibre per " i després afegir les altres cometes, una mica liante. La millor solució hagués estat crear un fitxer JSON, tot i que això no resol tampoc el problema de les cometes.

La visualitació (molt naif, no en sé més) la teniu aquí. A partir del fitxer CSV es visualitzen els 25 darrers tuits i els 9 llibres més votats.

Problemes:

  • Els usuaris no respectaven lo de les cometes o utilitzaven la cometa simple (‘), caldria millorar el script per acceptar-ho.
  • Els usuaris posaven dos o més llibres en un mateix tuit, caldria generar una línia per cada llibre en el CSV, tot i que això “traeix” l’esperit del joc.
  • La visualització està agafada amb fils, si mireu el codi D3.js ho entendreu, de vegades uso els selectAll(“…”) de D3 i d’altres faig bucles javascript convencionals.

Però bé, com a primer intent em dono per satisfet!

Advertisements

el gordo de Navidad

el pasado 22 de Diciembre, como cada año desde hace muuuucho (la wikipedia revela que la primera edición fué en 1812), se celebró el sorteo de Navidad, donde millones de españoles ponen sus esperanzas al haber fracasado políticos y empresarios…

pero bueno, no nos pongamos negativos; en este sorteo entraban en juego 100000 bolas, repartidas en 200 liras de 500 bolas cada una, que se mezclan juntas en un bombo giratorio. Este bombo junto con otro con los premios (1807 bolas en total, una por cada premio) se hacen girar y se extrae una bolita de cada bombo hasta que el bombo de premios se queda vacío

la idea era visualizar los resultados, primero por número (en un array de 200 x 500, de 250 x 400, de 316 x 317???) pero el resultado no era muy interesante, no es que se esperasen ver patrones al estilo Matrix o Pi, pero la verdad es que no se entendía gran cosa. Entonces la idea de visualizar las liras usadas para almacenar las bolas hasta que son metidas en el bombo cogió fuerza, por lo que aquí teneis un applet que permite visualizar los premios directos (es decir, con bolita de premio, no terminaciones o centenas de otros premios, etc.) ordenados por liras

por cierto, si alguien sabe como están las bolas distribuidas en las liras que me lo diga, por favor, y modificaré el código de acuerdo a dicha distribución; ahora cada grupo de 500 bolas está ordenado por columnas, de izquierda a derecha; las columnas están invertidas, suponiendo que la lira se carga desde arriba, cuando está vacía, empezando por la bola 00000 en el primer alambre, por lo que encima le queda la bola 00001 y así hasta la bola 00049; la bola 00050 va al fondo del segundo alambre, etc.

por otra parte, cuatro estadísticas sobre la distribución de premios entre liras:

  • de las 200 liras, todas recibieron algún premio, la que menos 2 (en dos casos) y la que más 17 (un caso)
  • lo más habitual es que cada lira tenga 9 o 10 premios (ocurre en 25 casos cada uno); 1807 premios entre 200 liras da a 9 premios por lira, aproximadamente, así que está bien repartido
  • lo “normal” (el segundo y tercer cuartiles) va entre 6 y 11 premios por lira, ambos incluidos
  • dentro de cada lira, la “mejor posición” es la 160 (empezando desde 0), lo que hace que hasta 12 veces haya caido el premio en 160 o 660
  • la siguiente es 232 (y por lo tanto 732) con 10 veces
  • por el contrario, hay 11 posiciones que no han sido agraciadas con ningún premio: 014 (y por lo tanto 514), 022 (522), 032 (532), 073 (573), 176 (676), 233 (733), 236 (736), 282 (782), 291 (791), 324 (824) y 393 (893)

suerte!!!

Categories: visualization

més Mohameds que Jordis?

26/11/2011 3 comments

del grup InfoExplorers surten mil idees i ens costa donar sortida, ja sigui per la complexitat dels conjunts de dades com de vegades per manca d’un objectiu concret i comú

aprofitant el poc quòrum de l’altre dia, vàrem decidir començar a jugar amb els noms dels nadons a Catalunya, per comarques, amb la idea de respondre la pregunta que es feia Duran Lleida, de CiU i que dóna el titol a aquesta entrada

agafant les dades d’IDESCAT a lo bruto, endevinant l’ús dels paràmetres de la crida HTML i amb una mica de parsing HTML cutre, hem pogut agafar la primera plana de noms (els 25 més populars) de cada comarca entre els anys 1997 i 2010, inclosos; el resultat? una bonica imatge creada amb tagxedo (la posició del nom no té res a veure on s’ha usat més, la mida si, és proporcional al nombre de cops que s’ha posat):

noms dels nadons a Catalunya, 1997-2010 (font: IDESCAT)

noms dels nadons a Catalunya, 1997-2010 (font: IDESCAT)

trobeu els Mohameds? jo no, en canvi veig molts Jordis i no parlem ja dels Marcs o les Maries… de fet les dades diuen que en aquest període de temps, hi ha hagut 976 Mohameds (o Mohammeds, per cert) contra 3780 Jordis, així que, sr. Duran Lleida, ejem, ejem… de fet, si en lloc de tenir en compte els 25 primers noms usem tota la info d’IDESCAT, hi ha 7364 Jordis i 2975 Mohameds (i variants), que no són pocs però està lluny dels 20444 Marcs, per exemple…

però no siguem manipuladors, potser en Duran Lleida es referia a una situació concreta: les dades mostren que els Mohameds van batre als Jordis l’any 1999 a Osona, per exemple, ha passat uns quants cops més… de fet és un fet que s’inicia tímidament el 1999 però desperta amb més força el 2006, on en 7 comarques hi han nascut més Mohameds que Jordis, fet que s’ha repetit a 9 comarques el 2007, a 7 el 2008 i a8 el 2009 i el 2010, sembla “estabilitzar-se”

i on ha passat més cops? doncs 9 cops a Osona i al Baix Empordà, i 8 cops a l’Alt Empordà; algú podria dir-me si és en aquestes comarques on partits com PxC amb el seu discurs xenòfob treu millors resultats? igual Duran Lleida només volia fer com Albiol a Badalona, copiar el discurs de PxC per esgarrepar quatre vots… (per cert, per mi PxC sempre ha volgut dir Peó per Cavall); si ho repetim per tots els noms, no només els 25 primers, els resultats no són gaire diferents

tots els scripts i dades els teniu a http://personal.uoc.edu/opendataviz/nadons

problemes? noms amb accents, ç, ñ i altres caracters especials, la majoria d’eines unix (p.e. uniq) no funcionen correctament; treure els accents vol dir que Júlia i Julià passen a ser el mateix, un problema que conec de primera mà…

crítiques, comentaris, idees, finançament tot serà molt ben rebut!!!

Categories: visualization Tags:

Catalan government facilities

just a quick post for setting up this blog, these are the facilities of the Catalan government (well, only those 18856 out of 25309 that have been geolocalized), the bounding box approximately reveals the borders of Catalonia

you can find the original data set here, the graph was created using Gnuplot