Transactions in Spain exceed 12,250 million € in 2018

Spanish companies made large investments in working capital and in international companies, in spite of a slight slowdown in the economy during 2018.

According to figures from the consultancy firm TTR, Spanish investors spent more than 12,250 million € acquiring international capital. Of the total completed transactions over the last year, only those transactions for which the total outlay is known were included in this report. For some of these, however, the associated debt is not known.

Leading the ranking:

Abanca paid 1,379 million to Deutsche Bank for a retail business in Portugal. Amadeus(from the tourist industry) acquired Travel Click (of USA) for 1.319 million € and Cepsapurchased the state-owned oil company Abu Dabi Adnoc for 1.208 million €.

Through the following visualization, we will better understand the size of these investments per country and sector:

main countries by sector

Figure: Main transactions by sector


Las mayores operaciones del 2018 superan los 12.250 millones de Euros

Las empresas españolas invierten en activos y en  compañías internacionales a pesar de la ligera desaceleración económica del 2018.

Según los valores de la consultora TTR los inversores españoles gastaron más de 12.250 millones de euros en adquirir activos internacionales. Del total de transacciones completadas durante el pasado año solo se incluyen aquellas cuyo importe ha sido desvelado sin incluir la deuda asociada a algunas de ellas.

Encabezan el ranking:

  • Abanca, que pagó 1.379 millones por un negocio minorista en Portugal a nombre de Deutsche Bank.
  • Amadeus(sector turístico) adquiere por 1.319 millones TravekClick de EEUU.
  • Cepsaadquiere la petrolera estatal de Abu Dabi Adnoc por 1.208 millones.

main countries by sector

Figura: Detalle por país y por sector

Fuente: Diario Expansión

Designing the visualization of #Cuentalo

The #Cuéntalo movement started early in the morning on April 2018, inviting women to share on Twitter their personal experiences of sexual aggression. In a few days, it generated more than 2.5 million tweets and retweets with stories told by their protagonists.

Archivists Vicenç Ruiz and Aniol María gathered the tweets in real time, and together with data journalist Karma Peiró they came to BSC to talk about how we could study and visualise this dataset.

The tweets go from the uncomfortable to the unbearable, stories in first person occasionally mixed with a woman speaking in the name of another one because she doesn’t have a computer, or because she doesn’t dare to tell her story,  or because she was murdered.

“My mom’s boyfriend raped me when she was drunk because ‘I was very much alike and it was wrong to make love in her state’ and ‘so that you learn for when you get older’, since I was 9 until I was 12 years old”

There are many tweets, and each of the is important. Our goal was to study them with statistics and visualise the results to convey the shocking magnitude of the movement, while trying to respect the unique identity of each narration. Cristina Fallarás, the journalist that started and pushed the viral movement, gave us one more goal: She wanted the #Cuentalo visualization to be shocking, but also to remain a safe space, a place without fear or shame where victims could tell in first person their brutally honest testimonies (many of the telling them for the first time in their lives). A place where they can tell what’s hidden in plain sight, because even if it happens every day, what is not said out loud does not exist.

In the next few posts we will explain our analysis and design process for this project: From data gathering, cleaning, and treatment, to the conceptualisation and implementation of the final result.

The data

The original dataset contained 2.1 million tweets in JSON format, created between April 27th and May 12th, 2018. The collection was missing two days that we were able to recover partially, reaching 2.75 million tweets in total. Each tweet has a lot of properties that we analised (and we will tell about this on the next post); here we will focus on what we used for the visualization.

One important distinction is that there were 160 thousand tweets with content written by users, while the rest (2.6 million) were participations in the form of retweets. These are indeed crucial for spreading the movement (and we assume they are supportive of it), but the data we want to visualize is in the content of the tweets we call “original” (i.e. not retweets).

We want to visualize who tweeted: These mostly anonymous 160 thousand tweets can be split between those that gave some testimony in first person, the ones that tell something on behalf of another woman who doesn’t dare or can’t do it (for example, because they don’t have internet access or they were murdered), and those that express words of support. We also found a few unclassifiable tweets (advertising, images), and a small group of trolls and jokers.

And on the other hand, we wanted to visualize what people wrote about: What testimonies were told? Because of the volume of the data, this was a complex task, but we knew it would be valuable, as we know that above 70% or 80% of sexual aggressions are never reported. This is one of the key points of #Cuéntalo: Bring out to light those things that happen everyday and are not computed in any registry, either by fear, or worst, because society does not believe them.

“I’ve been raped twice; part of my family doesn’t speak to me anymore for saying this, and for saying I wouldn’t shut up about it. I’ve even withdrawn a rape report because the police made me afraid. I won’t shut up anymore #Cuentalo”

In order to categorise the 160 thousand original tweets, 16 people in our team manually classified the content of over 10600 tweets (randomly chosen). The goal was to use this sample to create an algorithm to classify the rest of the tweets automatically, and for this we used the maximum number of categories that we could process correctly.

The first categorization was about who wrote the tweet: In the first case, we have testimonies in first or second person, an expression of support, someone that opposes the movement, and random tweets (for example, tweets in other languages, people that used the popularity of the hashtag to do advertising, or tweets containing just a screenshot). This last example did contain people that told stories that were too long for the 280 characters of Twitter, but we cannot read them correctly.

“The stories of #Cuentalo give me the shudders. They pain. They pain a lot. But it is necessary to read them to understand they are not isolated cases: they are everyday situations.”

After this we categorized the content of the tweets. We found accounts that go from the sensation of fear and insecurity that women feel everyday, to murders with torture, with all types of aggressions in between (physical, verbal, or virtual), including beatings and rape. To ease the training process (more details to come in the next post), we opted for the simplest possible categorization, sadly at the expense of the precision we would like to have (or that we could if we read by hand all tweets). Aspects like frequency or duration, degree of cruelty, age, or victim-aggressor relation were not worked on, not because we don’t think they are important but rather because of technical reasons.

Our categorization is incomplete and improbable in many ways (for example from legal and social points of view). We argued a lot about this issue, specially worried about not minimizing or simplifying the seriousness of the fact.

Initially, the categories we used were: Murder, rape, sexual agression, assault, harassment, fear (the explicit mention of), and emotions like disgust, rage, and indignation. Like we said, this categorization is imperfect because of its simplicity, and for the visualization we aggregated it even more to just three categories: assault or any kind of physical agression (including murder, rape, and so on), non-physical agression (harrassment, fear), and an emotional reaction (like rage, etc). The previous and finer categorization work was not in vain as we were able to use it to estimate the percentage of tweets in each category in the full dataset. Of the 10632 tweets we labelled by hand, 31.03% are written in first person, 8.91% are told by someone else, 40.18% are support tweets, 3.12% are tweets agains the movement, and  16.69% are unrelated tweets. Extrapolating these percentages to the total, we would have error brackets around 1.5% for the tweets against #cuentalo, 3% error in the estimation of testimonial tweets, and almost 6% for the support tweets.

Within the testimonial tweets (first and second person, totaling almost 40%), 3.92% mention murder,  5.59% mention rape, 11.18% mention sexual assault,  6.27% mention physical assault,  14.19% talk about harassment,  11.78% mention fear, and 19.23% some reaction like disgust/rage/sadness (the percentages don’t add to 100 because in the same tweet many things can be mentioned). Again, if we extrapolate these numbers to the global dataset, we find error bars of  1% for rapes and murders, 3% error in the estimation of assault and harassment, and 6% for reaction tweets.

It’s often told that people understand frequencies better than percentages, so we wrote these results in the webpage as such:

Let’s conclude this section by commenting that our algorithm was able to label tweets from the dataset with a precision of 80% for who is writing the tweets, and with a precision of 70% for the topics mentioned. In general, not exact but quite well due to the reduced size of the input data (better results are obtained with millions of sentences). We expect that there will be many mis-labeled tweets, and the predictions is more a suggestion than a final conclusion. Our take away from this is that the visualization cannot depend way too much on the precision of this clasification until we can manually label them all.

The visualization

We start by discussing images and themes that we used as inspiration, including some of our own sketches as we started producing them.

References for the combination of ideas about empathy. From faces that express rage or sadness, to those represented by words. The goal was also to capture the gap between a safe space and an insecure one, pushing feelings of both empathy and volume of the movement.

Visualization from related topics.

Initially we started with a preconcept: We were going to find many conversation threads, and we tried to represent them with trees like this:

Tree chart, beautiful but our data did not have this structure. 

However, we found that there was overwhelmingly more single tweets and that the conversations were not long, so this technique did not work.

We then though about a lineal time narrative, showing the virality of the phenomen and its magnitude. This charts shows the number of tweets per minute (the highest point is about one thousand), from 27th of April to the 13th of may:

We played with the idea of this chart looking like a sound wave, representing the movement as a giant scream heard around the world:

Sound wave metaphor: Your voice is being heard. On the left, a real sound wave. On the right, our dataset mimicking the sound look. 

But in the end we were not convinced by the scream metaphor. Also, the lineal time representation would prevent us from adding data in the future. It felt like freezing the event in time, not allowing it to continue. This visualization did allow us to represent tweets by country, though:

Amount of tweets per minute (vertical axis) as a function of time (horizontal axis), colored by country. Notice that in the first two days the movement happens mostly in Spain (red), and then jumps to Latin America, specially in Argentina (green)

We ended up dropping this option also because we had lost the individuality of each tweet, which was important for us.

In order to be able to let people add more tweets, we started exploring circular representations and periodicity.

Initial inspiration for the circular representation. The reference material go from complex categorizations to nested representations (rings, like in a tree) of each day of the viral movement. In the third example we can see a combination of spatial connection (the countries in the map)

In our first attempts, we started plotting hours of the day around the circle, and setting tweets from the inside out in a first created order. These sketches were made thinking of an eclipse, or a human eye:

Intermediate sketches playing with diameter encoding (write time) and the number of tweets (piled on top of each other). The colorings are made by country or by day.

This representation is quite versatile and allows us to incorporate more dimensions like country (e.g. in color), or number of retweets, AND it allows to explore interactively each tweet one by one.

Radial representation (ink blot), plus some space at the center for text hovers. Here color represents country, and the size of the dots is the number of retweets.

In order to escape the ink blot shape and take better advantage of the radial position for each point, we tried with some structure, for example by ordering the tweets inside-out in a ring for each day, with the size of the ring proportional to the total volume of tweets for each day:

The results are interesting by they also have the problem of being difficult to expand with new tweets in the future.

At this point, we met with Cristina Fallarás who sent us back to the origins, and focused on where we should put the main message: #Cuentalo, aside from being an event with a large social impact, was a safe space where women could tell their story. We then decided to use our radial coordinate to somehow represent this. We needed to put the women who were telling their stories in a space at the center of focus, and surround them by the people who support them but also isolate them from the randoms and trolls outside in the world.

With this in mind, we created the first sketches that approach the final solution:Di

Final sketches in which we start working with time in the angular direction and placing the tweets radially by who wrote it, as computed by our algorithm. Near the center, the tweets with larger probability of being first person stories (central ring in blue). Around them, support tweets (thick ring in red). And far apart the center, the other tweets (random, trolss).

Our classification algorithm (of who wrote the tweet) allowed us to make a final improvement: We removed those tweets where we were at least 90% sure that they were random (jokes, advertising, and unfortunately also tweets with only an image). In the final visualization we end up with only 100 thousand original tweets, and retweets encoded in the size (subtly).

SO, before getting to the final representation, let’s remember our goals in the design, what it should say:

Magnitude: These things happen, and more than we think, These are numbers that should set off our alarms, specially because behind these tweets there are so many more women who haven’t dared say anything.

Empathy: This maybe happened to you too, or could happen to anyone around you. It is empathy that helps us understand someone else´s suffering, their fear, like a close feeling that makes us intervene and speak up.

– The diversity and atrocity of the crimes. Murder, rape, torture, crimes against minors, and crimes commited by families, friends.

– Hope that the victims will find a safe environment where they are not judged and questioned, helping others come forward. This safe space is reinforced by the messages of those that denounce the situation without having experienced it personally, facing those that do not believe how serious the problem is and try victim shaming and blaming. Only by legitimizing the suffering of many we can discuss justice reform and make law reflect better what happens in reality, and thus help change and improve our world.

The final visualization  #cuéntalo

The final visualization (here), ended up using the circular representation to evoke a safe and protected space. Our estimation of who wrote the tweets let’s us represent testimonials in the center ring, somehow surrounded and protected by the tweets of support in the second circle. The rest, far or against the cause, are very outside the inner circle. Each tweet is represented by a point in in space, forming a large and filled cloud that gives us an idea of the magnitude and repercusion of the phenomenon. The individuality of each tweet is preserved thanks to exploration, allowing us to see the content of each story by hovering with the mouse. The time of day when the tweet was written is encoded in the angular variable, reminding us that this is an issue that happens at all times of the day, everywhere. The bright colors, over dark background, represent a light in the darkness. The color palete (from red to white) evokes the violence of the topic, and by using it to encode the probability that a tweet is talking about a physical aggression, we discover something interesting: Most of the tweets that talk about assault are located near the center. The inner ring, where women tell their stories, is tainted with deep red where the most piercing tweets.

The visualization is complex, and the legend helps us interpret it:


In alphabetical order: Sol Bucalo, Luz Calvo, Carlos Carrasco, Fernando Cucchietti, Artur García Saez, Carlos García Calatrava, David García Povedano, Juan Felipe Gómez, Camilo Arcadio González, Guillermo Marín, Irene Meta, Patricio Reyes, Feliu Serra and Diana Fernanda Vélez. Also from BSC for the classification we had the collaboration of María Coto and Laura Gutierrez.

Epilogue: Unexplored options

In the selection process of themes we wanted to explore, we dropped some interesting options, like for example talking about the age of the victims: more than three thousand tweets report victims less than 18 years old. Many of them are today adults and telling their story for the first time.

We also thought about focalizing in those tweets in second person that mention the woman who was murdered (10% of all testimonies), usually ending with a phrase “I’m telling this because…can’t”. This is an example visualization of all the name mentioned in this kind of phrase, in a homage to the Iraq’s bloody toll famous visualiazation:


#Cuéntalo – La Visualización

El movimiento #Cuéntalo vió la luz una mañana a fines de Abril de 2018, invitando a las mujeres a compartir en Twitter las experiencias sufridas por la violencia machista. En pocos días el movimiento generó más de dos millones y medio de tuits y retuits de historias contadas por sus protagonistas.

Los archiveros Vicenç Ruiz y Aniol María recogieron los tuits en tiempo real, y junto con la periodista Karma Peiró vinieron a BSC a hablar de cómo podíamos estudiar y visualizar este dataset.

Los tuits van desde lo incómodo hasta lo desgarrador, un relato en primera persona detrás del otro, ocasionalmente sacudidos por alguna mujer que lo cuenta por otra que no tiene ordenador, que no lo quiere contar, o que no puede porque fue asesinada.

Los tuits son muchos, y cada uno de ellos es importante. Nuestra meta era estudiarlos estadísticamente y visualizarlos para transmitir la impactante magnitud del fenómeno, intentando respetar a la vez la identidad única de cada relato. Cristina Fallarás, la periodista que comenzó e impulsó el movimiento viral y con la que empezamos a colaborar luego en el proyecto, nos agregó una meta más: Así como #Cuéntalo, ella esperaba que la visualización golpeara e impresionara, pero que siguiera siendo un espacio seguro. Un lugar sin miedos ni vergüenzas donde las víctimas puedan contar en primera persona  testimonios brutalmente honestos de los horrores vividos, muchas de ellas contándolo por primera vez en su vida. Un lugar donde se pueda decir lo que se oculta, porque aunque pase a diario lo que no se nombra no existe.

A través de una serie de próximos artículos, trataremos de explicar cómo tuvo lugar el proceso de análisis y diseño de la visualización: Desde la recolección limpieza y tratamiento de los datos, hasta la conceptualización de la visualización final. En este primer artículo hablaremos de la visualización de datos.

Los datos

El archivo original que recibimos contenía 2,1 millones de tuits en formato JSON, escritos entre el 27 de Abril y el 12 de Mayo de 2018. A este archivo le faltaban dos días que luego pudimos recuperar parcialmente, hasta llegar a los 2,75 millones de tuits. Cada tuit tiene una gran cantidad de propiedades que hemos analizado en un  estudio estadístico que contaremos en el próximo artículo del blog; aquí sólo nos focalizaremos en lo que utilizamos para la visualización. Una distinción importante es que hubo 160 mil tuits con contenido escrito por usuarias, mientras que el resto de participaciones son retuits y likes. Aunque los retuits son cruciales para dar amplificación al movimiento (y que asumimos como un apoyo implícito), el contenido que queremos visualizar es el de los tuits que llamamos originales.

Estos 160 mil tuits,mayoritariamente anónimos, se pueden descomponer en aquellos que  dan testimonio de sus propias vivencias, las que lo cuentan en nombre de alguien que no se atreve o no puede hacerlo (por ejemplo, porque no tienen internet, o porque fueron asesinadas), y aquellas que expresan palabras de asombro o apoyo al movimiento. Y además de los tuits inclasificables (publicidad, imágenes), un pequeño grupo de trolls o gente haciendo bromas.

Por el otro lado, está el contenido escrito. ¿Que tipo de testimonios se contaron? Por el volúmen de los datos, esto era una tarea muy compleja de realizar, pero sería muy valioso. Al fin y al cabo, entre el 70 ó 80 % de los casos de violación en España no se denuncian. Y este es el punto más importante del movimiento #Cuéntalo: sacar a la luz aquellas cosas que pasan a diario y no están computadas en ningún registro, ya sea por miedo, o peor aún, porque la sociedad no lo cree.

Para poder categorizar los 160 mil tuits originales, 16 personas de nuestro equipo clasificamos manualmente el contenido de 10600 de ellos escogidos aleatoriamente. Como el objetivo era preparar un programa de ordenador que los clasifique automáticamente, utilizamos la mayor cantidad posible de categorías que se pudieran procesar correctamente.

Lo primero que categorizamos fue quién cuenta el tuit: Un testimonio en primera o en segunda persona, una expresión de apoyo o solidaridad, los opositores, y algunos tuits aleatorios (por ejemplo otros idiomas, o gente que hizo publicidad de algunas cosas aprovechando que el hashtag estaba trending). Estas categorías son autoexcluyentes. Desgraciadamente hubo mucha gente que contó su historia con imágenes o capturas de pantalla, pero como no podemos leerlas quedaron en la categoría “otros”.

Después, categorizamos el contenido de los tuits. Encontramos relatos que van desde la sensación de miedo e inseguridad de las mujeres en el día a día, hasta los asesinatos con tortura o tortura reincidente, pasando por todo tipo de agresiones (físicas, verbales, virtuales), incluyendo maltrato y violaciones. Para facilitar el proceso de entrenamiento (más detalles en el próximo artículo) optamos por una categorización lo más simple posible, lamentablemente a costa de la precisión en el lenguaje que nos gustaría tener (o que tendríamos si pudiéramos leer todos los tuits). Aspectos como la frecuencia, duración en el tiempo o grado de crueldad impartido a las víctimas no han sido tenidos en cuenta, no porque descartemos la trascendencia de estos factores, sino por motivos técnicos.

Otros factores que dejamos para profundizar en un próximo estudio son la edad de las víctimas, edad de los agresores, tipo de agresor (desconocido, amigo, familiar…), y muchas cosas más. Nuestra categorización es por ahora imperfecta y mejorable desde varios puntos de vista como el legal o el social, en el que se puede argumentar que ciertos tipos de agresión sexual son violaciones. Discutimos ampliamente y por  mucho tiempo en esta etapa, sobre todo preocupados por no minimizar o simplificar la gravedad de los hechos.

Inicialmente, las categorías que utilizamos fueron: Asesinato, violación, agresión sexual, maltrato, acoso, miedo (mención explícita), y emociones de asco, tristeza, rabia, o indignación. Como ya hemos dicho, esta categorización es imperfecta por simple y aún así resultó demasiado difícil para nuestro algoritmo, así que para la visualización utilizamos una agregación aún mayor con solo tres categorías: agresiones físicas (asesinato, violación, agresión sexual, y maltrato), agresiones no físicas (acoso, miedo), y reacción emocional (asco, rabia, etc.). Sin embargo, el trabajo de categorización manual no fue en vano, ya que por la metodología que utilizamos pudimos estimar los porcentajes de tuits similares que se encuentran en el dataset completo. De los 10632 tuits etiquetados manualmente, 31,03% son en primera persona, 8,91% en segunda persona, 40,18% son tuits de apoyo, 3,12% son tuits en contra del movimiento, y 16,69% son otros. Si extrapolamos estos porcentajes al total de los tuits, tendríamos un error que va desde el 1,5% para los que están en contra, 3% para los testimonios, y casi 6% para los tuits de apoyo.

Dentro de los tuits que son testimonios en primera o en segunda persona (casi el 40%), 3,92% hablan de un asesinato, 5,59% de violación, 11,18% de agresión sexual, 6,27% de maltrato, 14,19% de acoso, 11,78% de miedo, y 19,23% de asco/rabia/tristeza (los porcentajes no suman 100 porque en el mismo tuit se puede hablar de varias cosas). De nuevo, nuestra metodología nos permite extrapolar estos porcentajes al global con unos márgenes de error del 1% en el caso de asesinatos y violaciones, 3% para agresiones, maltratos y acoso, y 6% para las categorías de miedo e indignación.

Está muy estudiado que los seres humanos entienden mejor las frecuencias que los porcentajes, así que escribimos los mismos número de arriba de la siguiente manera:

Concluimos esta sección comentando que nuestro algoritmo fue capaz de etiquetar los tuits de la base de datos con una precisión del 80% para las categorías de quién escribe (primera o segunda persona, etc.), y con una precisión de alrededor del 70% para la temática de los tuits (las tres categorías simplificadas). En general, bastante bien para el reducido tamaño de los datos de entrada (algoritmos más exactos trabajan con cientos de millones de frases), pero con un error lo suficientemente grande como para esperar que hubiera varios tuits muy mal clasificados. Es decir, en este punto esta predicción es más una buena sugerencia que una conclusión final, e indica que no deberíamos basar la visualización demasiado precisamente en este aspecto.

La visualización

Comenzamos discutiendo imágenes y temas que nos sirvieron de inspiración (recopiladas a lo largo de todo el proceso), a lo que se sumaron bocetos de las ideas que iban surgiendo.

Referencias que combinaban algunas ideas de empatía. Desde la visión de rostros que expresaban tristeza o rebeldía, hasta los representados a base de palabras. En último lugar el abismo entre la zona segura, y la zona de inseguridad, provocando a la vez sentimientos de empatía y magnitud.


Visualizaciones de datos de temas relacionados.

Inicialmente teníamos el preconcepto de que habría muchos hilos de conversación y que podríamos representarlos en un árbol como este:

Gráfica de un árbol, pero los datos no tenían esta estructura.

Sin embargo, había mucho más volúmen que conexiones, y no se llegaba a algo visualmente atractivo.

Pensamos entonces que una narrativa lineal en el tiempo mostraría el fenómeno viral y su magnitud. Estos son la cantidad de tuits por minuto (la parte más alta son unos mil) desde el 27 de abril al 13 de mayo:

Jugamos un tiempo con la idea de que parecía la mitad de una onda sonora, el movimiento como un grito que se escuchó en todo el mundo:

Metáfora de onda de sonido: Tu voz se escucha. A la izquierda, una forma de onda real como mock up. A la derecha, los datos reales de #Cuéntalo con esta estética

Pero la metáfora del grito no terminó de convencernos, y la línea temporal nos limitaba la posibilidad de en el futuro permitir que la gente agregue tuits. Era de alguna manera congelar el evento en el tiempo, no permitir que crezca. Esta visualización si que nos permitía incluir la información de la ubicación de los tuits (por país al menos)

Cantidad de tuits por minuto (eje vertical) como función del tiempo, coloreados por país. Notar como el movimiento comienza en España (color rojo) los primeros dos días, y luego salta a latinoamérica, sobre todo en Argentina (verde)

Sin embargo, estas visualizaciones lineales agrupadas perdían la individualidad de cada tuit, algo que era importante conservar.

Para poder acomodar nuevos tuits, comenzamos a explorar representaciones circulares que permitieran periodicidad.

Inspiración inicial para la representación circular. Las referencias externas seleccionadas, contemplan desde una categorización compleja, hasta la representación anidada (a modo de los anillos del tronco de un árbol) para representar los diferentes días el fenómeno. En el tercer ejemplo se combina con una representación espacial (de referencia a los países implicados en el movimiento)

En nuestras primeras pruebas comenzamos poniendo las horas del día alrededor del círculo, y acomodando los tuits desde adentro hacia afuera en orden de llegada. Los resultados con nuestros datos evocan la figura del eclipse o del iris de un ojo humano:

Bocetos intermedios que jugaban con el diámetro (orden de llegada) y el número de tweets (de manera apilada). En algunos de estos ejemplos se puede ver el coloreado por días o por países

Esta representación es muy versátil y permite incorporar otras dimensiones como el país (color) o cantidad de retuits de cada relato, además de permitir explorar los tuits uno por uno.

Representación radial tipo mancha con más espacio en el centro. El color representa los países de origen, y el tamaño la cantidad de retuits de cada tuit.

Para salir de la forma de mancha y aprovechar mejor la ubicación radial de cada punto, probamos dar un poco de estructura ordenando los tuits desde dentro hacia fuera en anillos para cada día, con el tamaño de los anillos fijo o proporcional a la cantidad de tuits de ese dia:

Los resultados son interesantes pero tenían también el problema de que pasaría con tuits nuevos que agregara la gente en el futuro– ¿donde les tocaría estar?


En este punto, tuvimos una reunión con Cristina Fallarás que nos devolvió a los orígenes de hacia donde teníamos que orientar el mensaje: #Cuéntalo, además de un evento de impacto social, es un espacio seguro donde las mujeres podían contar su historia. Decidimos entonces usar la coordenada radial para representar de alguna manera esta unión, las mujeres que cuentan en el centro de un corro, con las que las apoyan por alrededor, y el resto del mundo (los contrarios y los aleatorios) por fuera.

Con estos cambios, creamos los primeros bocetos de la solución final:

Bocetos finales en los que se empieza a trabajar con el tiempo en sentido horario y la ubicación de los tweets en las coronas interior y exterior siguiendo la clasificación automática en categorías de “testimonio” (aro central), “apoyo” (segundo aro), y “otros” por fuera.

Nuestro algoritmo de clasificación de quién escribe el tuit nos permitió también una última mejora: Eliminamos de la representación aquellos tuits que estamos al menos 90% seguros de que son aleatorios (como dijimos, tuits que sólo contienen imágenes, tuits con bromas, y hasta gente que aprovechaba la viralidad del hashtag para hacer publicidad). En nuestra visualización, al aplicar este filtro solo nos deja con 100 mil tuits.

Antes de llegar a la representación final, recordemos los diferentes aspectos que queríamos poner de manifiesto a la hora de visualizar los datos:

– La magnitud: Estas cosas ocurren, y más de lo que piensas. Son cifras que deberían alarmarnos, sobre todo porque detrás de los tuits hay todavía muchas historias anónimas de mujeres que aún no se atreven a contarlo.

– La empatía: Esto es algo que probablemente también te ocurrió a ti, o podría ocurrirle en cualquier momento a alguien de tu entorno. Es la empatía lo que nos ayuda a entender el sufrimiento de los otros, su miedo, como un miedo cercano y nos empuja a intervenir y a dejar de callar.

– La diversidad y atrocidad de los crímenes. Asesinatos, violaciones y tortura, delitos contra menores y delitos que vienen de la mano de familiares, amigos, o desconocidos.

Esperanza de que las víctimas encuentren un entorno seguro donde no son juzgadas o cuestionadas, y que esto impulsará a que muchas más lo cuenten. Este entorno seguro se ve reforzado por los mensajes de aquellos que sin haber sido víctimas, denuncian la situación y se enfrentan a los que intentan minimizar la gravedad del asunto o de atenuar el impacto culpando a las propias víctimas de los actos de otros. Solo legitimando el sufrimiento de muchas se podrá reformar la justicia para que refleje lo que ocurre, y así cambiar la sociedad.

Visualización final de #cuéntalo

La visualización final (que se puede ver aquí), después del largo proceso de diseño, se inclinó finalmente por la representación circular para evocar el círculo de seguridad o protección. Nuestra estimación de quién cuenta un tuit nos sirve para representar a los testimonios en el centro o arco interior, de alguna manera “protegidos” por el resto de tweets de apoyo a la causa. Los otros, más ajenos, se acomodan lejos del centro. Cada uno de los tuits (testimoniales o de apoyo) se representan con un punto en el espacio, formando una nube que abruma por su magnitud, dándonos idea de la amplitud y repercusión del fenómeno. La individualidad de cada tweet se conserva gracias a la exploración, que permite ver el contenido de cada relato al pasar el mouse por encima. La representación horaria en el círculo nos recuerda que esto es algo que pasa a todas horas del día, y en todo el mundo. Los colores brillantes, sobre fondo oscuro, representan que hay una luz en la oscuridad. La paleta de color escogida (de blanco a rojo) habla de la violencia del tema, y muestra un hallazgo analítico muy interesante: cada tuit está coloreado de manera independiente de su posición, con los puntos más rojos donde más estimamos que se habla de alguna agresión física y los más blancos de agresiones no físicas u otros. El hallazgo es que la mayor parte de tuits que hablan de agresiones físicas coinciden con los tuits ubicados en el centro por ser testimonios. El círculo central, donde las mujeres cuentan su historia, se tiñe de rojo porque es donde están los relatos más desgarradores.

La leyenda de la visualización intenta ayudar a la audiencia a interpretarla:


Desde el BSC trabajaron en este proyecto (en orden alfabético) Sol Bucalo, Luz Calvo, Carlos Carrasco, Fernando Cucchietti, Artur García Saez, Carlos García Calatrava, David García Povedano, Juan Felipe Gómez, Camilo Arcadio González, Guillermo Marín, Irene Meta, Patricio Reyes, Feliu Serra y Diana Fernanda Vélez. Además, para la clasificación colaboraron María Coto y Laura Gutierrez.


Epílogo: Otras opciones no exploradas

En el proceso de selección de temas que podíamos visualizar quedaron en el tintero opciones muy importantes, como por ejemplo hablar de la edad de las víctimas: más de tres mil tuits reportan víctimas con una edad inferior a los 18, muchas de ellas hoy son adultas y lo cuentan por primera vez.

O focalizar en aquellos tuits en segunda persona que hablan de una mujer asesinada (10% de los testimonios), y que empiezan o terminan con una frase “Lo cuento yo porque … no puede”. Esta es un ejemplo de posible visualización con todos los nombres que aparecen en esa frase: mujeres asesinadas de las que solo tenemos hoy un relato.

O, con estos nombres, hacer una nube de palabras con el tamaño proporcional a la cantidad de veces que aparecen:

Growth and inequality in southern America

Note: The charts in this post can be explored interactively and for many more countries here. Source code and data are here.

This post has two parts, a commentary on the charts, and a more technical discussion on the visualization.

Recently I posted a chart on the evolution of the economy and social inequality in Argentina. The chart was a reproduction of one made by Alberto Cairo for Brasil, where it was shown that starting on the governments by Lula (in principle more leaned to the left) the country grew and inequality was reduced. The same trend can be seen in the Argentina chart starting from the governments of Kirchner and Fernandez (perhaps even from the interin Duhalde government). From the begining of this exercise my attention was drawn to the point that the trend starts around 2002 for both countries, so I thought it would be interesting to make the same chart for the countries in the region:

Growth and inequality

Here I reduced importance (by lowering color contrast) to presidential periods, so we can focus in the curve trends. As countries have very different sizes, putting them in the same chart is not super-helpful. Let’s try a separate chart for each country (now with more colours):

Small Multiples

I think it can be well appreciated that yes, all the countries of southern south America (the southern cone as we call it in Argentina) have grown economically and lowered inequality from 2002 on. Without entering a discussion on the causes of the trend (which would require a rigorous statistical study and a good theoretical base), there are many interesting details we can see:

  • Chile is the only country that has a clear and constant trend for the whole observed period, even though its Gini coefficient is higher than Uruguay or Argentina (however comparing Ginis between different countries can be tricky, it’s best to compare them when methodologies are the same)
  • Paraguay, Argentina, and Brasil suffered huge swings in the late 90s.
  • Bolivia and Paraguay are much smaller economically, although in the interactive version you can see that actually all of latin america is was smaller than developed countries.

I have the feeling that the charts above do not make the best job at highligting how coupled the countries are. For this purpose, I created a second chart in which I used a single color to distinguish the four combinations of larger or smaller GDP or Gini. The idea of this chart is that when countries change all in the same direction (irrespective of precise direction or size of change) it will look like a solid color block. This is the result:


I am pretty happy with the chart, the joined trend after 2002 is now very evident. I am still lingering about how to include at the same time the size of the change without loosing this strong highlight. It could be very useful, take for instance Chile that has a few bad years between 1998 and 2000, but they are actually way smaller than Argentina’s 2001 crisis–but in this chart they look the same, so bad chart, bad.
In a continuation post we shall study how to include this information as well as presidential periods in this deconstructed Cairo chart.

As before, the source for the data is the World Bank (this table y this table), and presidential periods were extracted from here.

Technical discussion:
Having many countries together in the plot makes it complex to distinguish presidential periods — which is in my opinion what puts the original chart by Alberto Cairo in a different class than a simple connected scatter plot (maybe we can call it a Cairo chart?). In this case I lowered the colour cacophony on purpose to highlight just the direction of the curves, but in doing so I maybe should have distinguished before-after 2002? Perhaps we can plot a simpler variable like left or right leaning government? I would need to catalogue all those governments, though…(you can help in this repository).

Placing the labels in the interactive is a nightmare for which I don’t have time. Literally, I’ve had it in dreams haunting me. The charts here are heavily stylized in Illustrator, but it’s not simple to place labels automatically without putting them on top of interesting things. Map people know this too well.

Perhaps the interactive could be helped by having presidential periods come to the foreground when you hover on top? I mean, not just the label, and reduce the rest?

The multiple scales are a discussion on their own. I left a few of the best options in the interactive. The default version is the one I like the most, but it is certainly a little misleading. It is more accurate to see all curves with the same scale, but it makes it difficult to see the details in each countries trends.

The only important scale option I left behind is an isometric on both axis (same percentage change). The closest I have is the combination of seeing all curves in the same plot, and then using a reference year to see percentage change. Just by coincidence, the x axis changes about 75%, and the y axis a 60%. So, almost there.

The list of presidents I found online is not what you think for some countries like Germany (and others), that have a president (head of state) AND a chouncellor or primer minister (head of government) who is the one holding the actual power. Adding this information is easy if I can get help (and if the World bank has the GDP and Gini data)

Finally, on the direction chart: I’ve been trying small lines under the squares to denote presidents, a colour gradient instead of a single colour for each direction, and little arrows instead of a single colour block. None is too satisfying, but I think it’s worth to keep trying. Ideas?

Desigualdad y Crecimiento en el cono sur

Nota: Las gráficas de este artículo se pueden explorar interactivamente y para muchos otros países en este link. El código fuente y los datos están disponibles aqui

Este artículo tiene dos partes, una de comentario sobre las gráficas, y otra de discusión técnica sobre la visualización.

Hace poco mostré una gráfica sobre la evolución de la economía de Argentina y la desigualdad social. Esta gráfica reproducía una equivalente de Alberto Cairo para Brasil, donde se podía ver que a partir de los gobiernos de Lula (en principio mas de izquierdas) el país crecía y la desigualdad bajaba. La misma tendencia se ve en el gráfico de Argentina a partir de los gobiernos de Kirchner y Fernandez, y quizás desde el interino de Duhalde. Desde el principio de este ejercicio me llamó la atención que ambas tendencias comienzan las dos en 2002, y quería observar la misma gráfica para los países de la zona:

Desigualdad y crecimiento en el cono sur

En esta gráfica he quitado importancia (al sacar contraste de color) a los períodos presidenciales para centrarnos en las tendencias de las curvas. Como cada país tiene un tamaño muy diferente, ponerlos todos en el mismo gráfico no ayuda a ver la tendencia. Probamos entonces una gráfica separada para cada país (Ahora si con mucho color 🙂 :

Pequeños multiples

Creo que se aprecia relativamente bien que si, todos los países del cono sur latinoamericano han mejorado económica y socialmente a partir de 2002. Sin entrar en discusiones de las causas de la tendencia (que requeriría un estudio estadístico riguroso y con una buena base teórica), hay muchos detalles interesantes a comentar:

  • Chile es el único país que ha mantenido una tendencia clara y constante durante todo el período observado, aunque su coeficiente de Gini resulta mas alto que el de Uruguay o Argentina (sin embargo la comparación entre Ginis de diferentes países puede ser muy engañosa, lo mejor es comparar cuando la metodología es la misma).
  • Paraguay, Argentina, y Brasil han sufrido los vaivenes mas importantes a fines de los 90.
  • Bolivia y Paraguay son notablemente mas chicos que los otros países, pero si van a esta página interactiva pueden verificar que toda latinoamérica es muy pequeña y mas desigual que la mayoría de los países desarrollados.

Siento que estas gráficas no son todavía la mejor manera de resaltar la tendencia. Para esto, pensé en una segunda en la cual pintar con un color la dirección del cambio entre un año y el siguiente. Las cuatro direcciones posibles están dadas por si crece o baja tanto el Gini como el PBI. La idea de esta nueva gráfica es que si un grupo de países cambian en la misma dirección se ve como un bloque de color sólido. Este es el resultado:

Grafico de direccion

Estoy conforme con esta nueva gráfica, la tendencia conjunta después de 2002 es bien evidente como una mancha naranja, excepto por la crisis financiera del 2009. Me queda la duda de si no se podría ver o representar al mismo tiempo la magnitud del cambio (no solo la dirección). En algunos casos podría ser importante (por ejemplo Chile tiene algunos años malos entre el 98 y el 2000, pero no tienen nada que ver con las crisis de Argentina del 2001. En esta gráfica se ven iguales, lo cual es malo. Mala gráfica, mala.
Para una tercera y última parte, exploraremos opciones visuales para incluír esta información asi como los períodos presidenciales. No hay promesas de fechas (este post lo prometí en un par de semanas y tardé casi tres meses…)

Como antes, la fuente de datos es el Banco Mundial (esta tabla y esta tabla), y los períodos presidenciales están sacados de aquí.

Discusión técnica:

Tener muchos países juntos hace muy complejo distinguir los períodos presidenciales por color–que es en mi opinión lo que distingue la gráfica original de Alberto Cairo de un simple scatter plot conectado (tal vez lo podemos llamar un Cairo chart?) En este caso bajé la cacofonía de colores a proposito para distinguir solo la dirección de las curvas, pero tal vez podría haber distinguido el período pre-post 2002? Tampoco estaría mal ver si se puede pintar usando una única variable (gobierno de derecha o de izquierda), pero habría que catalogar todos los gobiernos de la base de datos que recolecté (para ayudar ir este repositorio).

La ubicación de las etiquetas en el interactivo es una pesadilla. Literalmente, he soñado con ella. Las gráficas de este post han sido fuertemente estilizadas con Illustrator, pero automáticamente no es nada fácil ubicar etiquetas sin que pisen algo interesante abajo o entre ellas.
Para ayudar, podría hacer que se resaltaran los períodos presidenciales cuando se les pasa por encima, no solo que aparezca la etiqueta.

Las escalas son toda una discusión aparte. Dejé algunas opciones en el interactivo, con los valores por defecto como a mi me gusta ver el gráfico. Pero es cierto que ayuda ver las curvas todas juntas, o al menos todas en la misma escala. Pero a mi lo que me gusta es ver el detalle de cada país, y si se usa una escala única es casi imposible.

La única escala que dejo de lado (porque no me queda sitio en la página para mas opciones) es una isométrica donde el eje x cambie porcentualmete lo mismo que el eje y. Lo mas parecido a esto es la combinación de ver las curvas en un gráfico único, y tomar un año de referencia para ver porcentajes. De pura casualidad, el eje x varía casi un 75%, y el eje y un 60%. Casi.

La lista de presidentes que saqué de internet no es lo que uno cree para algunos países como Alemania, donde el presidente es la cabeza del estado y el canciller o primer ministro es la cabeza del gobierno (el que tiene el verdadero poder, digamos). Me haría falta ayuda para agregar esta información, una vez puesta debería funcionar el gráfico solo (si es que los datos del Banco Mundial están disponibles)

Por último, la gráfica de direcciones: He probado pequeñas líneas bajo los cuadrados para marcar los presidentes, un gradiente de color para marcar intensidad del cambio, y pequeñas flechitas para marcar dirección (en vez de un bloque sólido). Ninguna me satisface mucho, pero me parece que vale la pena seguir probando. ¿Ideas?

Inequality and economic growth in Argentina

A small clarification before we start: I am not pro or against the current Argentinian government, and if I had to vote in next sunday’s elections I would not be able to choose a side. The following is not a real political commentary, what I like is data visualization.

Recently I got to read Alberto Cairo’s The Functional Art, and I was strongly attracted to a great infographic about the evolution of the economy and inequality in Brazil. It got me thinking about how would that look for Argentina, so I went and got the data from the World Bank (starting in 1986, and only up to 2013), and reproduced the plot in a very similar style but using the Argentinian data.

Link to the original plot and discussion

My plot:


The chart’s interpretation is that points higher up represent more inequality, while points to the right mean a higher production of economic value. In the words of Alberto Cairo, one of the messages of the chart is that growth in GDP does not always mean a reduction in inequality.

A few technical comments:

Like in the original chart, I used the Gini coefficient to measure inequality. It is far from a perfect indicator, but it is a very popular one. To measure economic growth I decided to use the GDP per capita instead of the total one used in the original chart. I think this would be a little better since the country’s population grew significantly in the three decades spanned by the data.

I respected the original design and separated the presidential terms by colour, which I think is a brilliant decision. It totally makes the plot. There is one caveat though, and it is that each data point measures a whole year and president changes happen at different points during that year. Therefore there might be some leeway in how to put the color (and I did’t figure out an impartial algorithmic way to decide this).

With the risk of ruining the incredible work by Cairo and collaborators, I took the liberty of adding a few labels indicating important economic events (and I also changed fonts, colors, stroke widths, and other small stuff that makes my chart subtly but clearly worse, of course).

Comments on the content:

Like in the original chart, you can see a clear mark or general tendency that is very different for each presidency (including the difference between Menem’s first and second term).

More importantly, beginning in 2003, and coinciding with the Kirchner’s rise to power –just like Lula in Brazil–, the country grows economically and inequality goes down in an unprecedented manner (except for a small glitch under the global economic crisis of 2008). I could not find Gini estimates before 1986, but there are some for the urban area of Buenos Aires and they show that only in 1984, and before that in 1974, there were such low levels of inequality as today.

An important detail: reliability of the source

After a lot of comments by many of the readers in the original (in spanish) post, I caved and gave more hours to this project and included an alternative measure of GDP (alternative to the World Bank, that is).

Why? Well, for those not well versed in Argentinian politics, the current government intervened the official statistics institute, and since then their numbers (which feed the World Bank’s database) have been strongly questioned by many. The World Bank itself recognises that unreliability of the official data from Argentina and puts a disclaimer saying “the World Bank is also using alternative data sources and estimates for the surveillance of macroeconomic developments in Argentina”.

Many people asked me to get an independent source and check the data, so I did. I discovered other things in the middle, like for instance that it is terribly difficult to match different methodologies when measuring GDP. Therefore, I decided that the best (in terms of a compromise between easiness and correctness) was to give the official numbers for 2007 as valid, and then calculate the subsequent years from the relative growth (year to year percentage) measured with this other indicator (called ARKLEMS, it just rolls of of the tongue right?). The data from this analysis is shown in the alternative timeline in gray, which unexpectedly (from the comments), almost lines up with the data from the World Bank.

There are still things that bother me with this: first, I am plotting different things that maybe have no way of being normalized to the same values, and second, and perhaps more important, perhaps this indicates that the adjustment was already taken into account by the World Bank in my original data set (they say they are doing it, but not how). Hopefully this will lead to good conversations and discussions on how to recover the reliability of the INDEC.

New questions:

The evolution in Brazil, the original chart, is strikingly similar to that of Argentina. This makes me wonder how much is the effect of particular presidents (sure there must be some, but still) compared to the global and regional environment. To answer this question I got the full data set from the World Bank and maybe in one or two weeks I’ll get a complete infographic with a comparison (it won’t be easy as I have to rethink the design and maybe even go interactive…)

All the data comes from the World Bank, from this table and this table, except for the Gini coefficient from 88, 89, and 90, which I found in They cite the World Bank as a source but probably they took it from somewhere else. As a side note, Gapminder already let’s you do the comparison between countries of the region, only that there is no presidencial term information. The alternative GDP calculation from 2008 onwards was taken from ARKLEMS, which I adjusted for population growth, and only used the year to year change to estimate the movement of the 2007 World Bank data point.

Desigualdad y crecimiento económico en Argentina

Antes que nada: No soy pro-Kirchner ni pro-Macri, y honestamente si hoy tuviera que votar en Argentina no se a quién votaría. Esto no es un comentario político real, a mi lo que me gusta es la visualización de datos.

Hace poco leí en profundidad el libro de Alberto Cairo El Arte Funcional, y me atrajo una infográfica muy buena acerca de la evolución de la economía y la desigualdad en Brasil, y me dió curiosidad saber como serían esa gráfica para Argentina. Después de conseguir los números del Banco Mundial (solo conseguí datos a partir de 1986, y solo hasta 2013), reproduje la gráfica en un estilo muy similar pero utilizando los datos para Argentina.

Link al gráfico original

El mío (actualizado mayo/2018):


La interpretación de la gráfica es que puntos mas arriba representan una distribución mas desigual de los ingresos, mientras que mas a la derecha significa una producción total de riqueza mayor. En palabras de Alberto Cairo, vemos que “un crecimiento del PBI no siempre está acompañado de una reducción de la desigualdad”.

Un par de comentarios técnicos:

Como la gráfica original, para medir la desigualdad uso el coeficiente de Gini. No es una medida perfecta pero es un indicador muy utilizado. Para medir el crecimiento económico decidí usar el producto bruto interno per capita, introduciendo un cambio con respecto a la gráfica original (que usa el producto bruto interno total). Me parece que es un poco mas correcto usar esta gráfica ya que el tamaño de la población cambió bastante en las tres décadas abarcadas por los datos.

Respeté el diseño original de separar los datos en intervalos por presidencias, una decisión de diseño brillante. Sin embargo, creo que como la medición de cada año es para el pasado, y los cambios de presidencia están marcados aproximadamente dentro de ese año, se introduce un poco de ruido y el punto medido no coincide en realidad con la separación de colores perfectamente (a ver si se me ocurre un criterio automático para solucionar esto).

A riesgo de arruinar el increíble trabajo de diseño de Alberto Cairo y sus colaboradores, me tomé la libertad de agregar pequeños recordatorios de eventos económicos importantes de cada año (además de cambiar fonts, colores, anchos de líneas, y otras cosas que hacen que mi gráfica sea claramente peor, por supuesto :).

Comentarios sobre el contenido:

Como en la gráfica original, se puede ver una clara marca o tendencia general muy diferenciada por cada presidente Argentino (incluyendo Menem primera o segunda presidencia).

Mas importante, a partir de 2003, coincidiendo con la entrada de los Kirchner en el poder –y así como en Brasil con la entrada de Lula–, el país crece económicamente y baja la desigualdad de manera sistemática y sin precedentes (excepto por un retroceso coincidiendo con la crisis financiera global). No existen mediciones del índice de Gini a escala del país antes del 86 (o no las encuentro), pero las calculadas para Buenos Aires dan que no se veían niveles de desigualdad tan bajos desde 1984, y eso es un punto bajo especial que solo tenía pareja en 1974 (datos de Gapminder).

Nuevas preguntas que surgen:

La evolución en Brasil es muy similar a la de Argentina. Esto hace que me pregunte cuanto es el efecto de los presidentes en particular (que seguro hay alguno) y del comportamiento económico global y de la región. Para responder esta pregunta me bajé los datos de los países vecinos de Argentina, y voy a crear (tal vez dentro de una o dos semanas) una infográfica mas completa comparando todos los países (que me va a llevar mas esfuerzo porque no es fácil poner en la misma gráfica a Brasil y a Bolivia, por ejemplo). Próximamente por este blog…

Edición posterior:
Repito para responder antes que sigan preguntando: Todos los datos salen del Banco Mundial, de esta tabla esta tabla y de esta otra, excepto por los años 88, 89, y 90 del Gini que están sacados de la estimación de, que cita al Banco Mundial como su fuente pero probablemente lo sacaron de otro lado. De paso comento que con Gapminder ya se puede hacer la comparación de países de la región, pero no hay información de los períodos presidenciales.

Segunda Edición: actualización con nuevos datos del PBI alternativo


Por un lado me encanta la increíble recepción que ha tenido este artículo, pero por el otro me han llenado ya demasiado la cabeza con el tema de la confiabilidad de los datos del INDEC (y por ende, de los de mi fuente que es el Banco Mundial). Esta desgracia institucional me ha hecho sacar horas de donde no las tengo buscando como incorporar en la gráfica algo de este tema. Aqui está, pero antes, unas (cuantas) palabras.

No estoy contento del todo con el resultado por dos motivos, y ninguno tiene que ver con lo que dicen los datos: (1) Me molesta que la nueva presentación gira la discusión hacia el problema del INDEC y la mentira institucional. La gráfica original de Cairo tiene como tema principal la correlación entre el crecimiento económico y la distribución de la riqueza. Invita a pensar en la personalidad que cada presidencia dió a estas variables, a la comparación entre épocas y a ponerse ansioso y querer saber que le pasa a otros países. Técnicamente hablando, lo que ocurre ahora es que al mostrar dos conjuntos de datos para una misma secuencia, nuestro cerebro automáticamente entra en modo comparación/busqueda de similitud y diferencia, y el tema original se reemplaza por este. Para mitigar este problema resolví usar otro código de color (gris) para esta línea alternativa, intentando mantener la primera historia en una primera capa, y la segunda que aparece cuando hemos ya pasado por la primera. Es un intento de narrativa por capas, o como se llame, pero no se si me salió bien.
(2) Como visualizador de datos, lo mejor del mundo es tener una fuente confiable, regular, o por lo menos completa, de manera que puedo focalizar en construir el mensaje visual, en como se va a leer, en crear estructura gráfica y luego diseñarla, que son las cosas que me apasionan. Cuando los datos vienen “sucios”, como decimos, hay que hacer un buen trabajo de normalización, inspección, etc, lo que llamamos “limpieza”, repasando 17 veces para que no se escape ningún maltrato del dato o error estadístico. En este caso estoy combinando dos fuentes de datos que incluso puede que no sean completamente compatibles, y el resultado es que estoy poniendo juntos en la misma gráfica cosas que no estoy seguro si deberían estarlo (porque no soy un experto). Al final, que si esto fuera un periódico o una publicación con una editorial fuerte, nunca publicaría esta nueva versión, porque técnicamente agrega mas problemas de los que soluciona. Pero como esto es un blog sobre visualización experimental, y aquí la audiencia ha demostrado un altísimo nivel de poder ver las historias y los detalles de la primera versión, voy a dejar la original que me gusta porque tiene menos cosas, y poner aquí la nueva para que sigan discutiendo (la metodología la explico mas abajo):

(aqui estaba la imagen con los datos de ARKLEMS, ver mas abajo)

Con respecto a la fiabilidad de los datos anteriores y de los nuevos. Como comentó uno de los lectores, el mismo Banco Mundial (que usa datos del INDEC) reconoció que era una fuente de datos no confiable a partir del 2007, en especial para los datos de PBI. Sin embargo, a partir del 2014 volvieron a incluír las estadísticas, mencionando que el FMI todavía tiene a Argentina retada por no producir buenos datos, y que en ese contexto “el Banco Mundial también usa fuentes de datos y estimados alternativos para la supervisión de los desarrollos macroeconómicos en Argentina” (traducción mía de la errata de Abril de 2014). No me queda claro de este mensaje si el Banco Mundial solo mira esos datos alternativos, o si los incorpora en sus publicaciones y por lo tanto los datos originales que utilicé ya están corregidos.

Supongamos que no. Me sugirieron usar el indicador de ARKLEMS, creado y mantenido por un grupo de profesores de la UBA. La verdad es que no conozco cuales pueden ser mejores o peores, o si hay mas, asi que vamos a ir con este que tiene un nombre llamativo y fácil de recordar :). Cómo pegarlos? Son fuentes muy dispares en su metodolgía y la salida final, asi que hay procesarlo un poco (lo que mencionaba arriba). Después de darle varias vueltas para ver como juntarlo, decidí que lo mejor (en términos de balancear facilidad de implementación y comprensión con correctitud) fue utilizar el último punto que se considera válido del Banco Mundial (2007) como el punto de empate entre las curvas, y calcular la evolución de ese punto en adelante usando los crecimientos porcentuales año a año reportados en ARKLEMS. O sea, la curva gris que está en el nuevo gráfico se va calculando año a año a partir del año anterior y del cambio registrado en ARKLEMS. Es decir a partir de 2007 no se utilizan más los datos del INDEC.

¿Que cambia? Bueno, como era de esperar, hay menos crecimiento. La crisis del 2008 pegó mas fuerte de lo se veía antes, el crecimiento entre 2009 y 2011 fue grande pero no tanto, y a partir de 2011 se estanca el crecimiento. De cualquier manera la curva sigue mostrando un crecimiento, mas moderado, y más importante, la caída de la desigualdad, ya que este indicador es independiente y nunca dejó de ser aceptado por el Banco Mundial. Un poco sin sorpresas, la tendencia general permanece similar, por lo que la historia contada en la primer versión era básicamente correcta. Es mas, uno de los comentarios estimaba que el PBI final iba a caer cerca de los 9000, muy buen ojo!

Bueno, esa es mi interpretación. Opinen lo que quieran, pero como siempre manteniendo el respeto por favor, que venimos bastante bien.

Por útlimo, vuelvo a repetir que lo que me gusta es la visuaización de datos, y aunque no esté conforme es cierto que esta nueva gráfica me trajo un par de desafíos interesantes en ese sentido. Espero que si un poco falla y nos hace dejar de hablar de que pasó con la economía Argentina, al menos nos lleve a buenas discusiones sobre como recuperar la confiabilidad del INDEC, que sería muy bueno.

Aprovecho para agradecer todos los comentarios, pero por favor por unos días no pidan mas cambios 🙂

Un saludo

TERCERA EDICION: O sobre como cagarla, y luego reconocerlo. 

El gráfico que presenté originalmente tenía un error mío, interpreté “USD a valores actuales” como USD ajustados por inflación a valores de hoy. Ahora la gráfica es correcta (la que está arriba), con valores USD constantes a 2005. La anterior está mas abajo luego de la discusión de mi error.

A ver, tengo que pedir mil perdones por cometer un error básico. Esta vez los dioses de la estadística me sonrieron y la gráfica no cambia sustancialmente (también porque la tendencia es mas fuerte que la correción), pero es importante reconocer que la cagué y arreglarla. Por si no se nota, me siento mal al respecto.

Mi error, que astutamente reconocieron algunos lectores en sus comentarios, fué interpretar la descripción de los datos “USD a valores actuales” como USD ajustados por inflación a valores actuales. Los valores ajustados siempre se dan en referencia a algún año en concreto, pensé que buenos estos tipos me los dan a valores 2015. Pues no.

La nueva tabla de PBI que estoy usando es esta.

La gráfica correcta está arriba de todo, aquí abajo la primera que hice (solo le he cambiado la leyenda para que no circule mas la original con el error), para comparación.


Dos cosas: 1) Es notable que a pesar de cambiar los números, el comportamiento general de cada una de las presidencias que se veía en la otra curva se mantiene, y 2) Estoy asombrado con como coinciden los porcentajes de crecimiento año a año de la medición independiente de ARKLEMS con los datos del Banco Mundial. ¿Será que están realmente ajustando los datos del INDEC con indicadores alternativos? Para recordar, en esta curva tomo el valor 2007 del Banco Mundial como bueno, y le aplico el crecimiento año a año medido con el ARKLEMS per capita (porque ARKLEMS está en pesos y no quiero ponerme a usar tasas de cambio varias). La otra opción es que el INDEC está publicando bien los números y solo lo ha quedado la mala fama, que sería un primer paso para recuperarla. O por supuesto puede que la metodología de ajuste de ARKLEMS a esta escala no sirva, por ahora no me doy cuenta de como. Si alguien quiere ayudar en eso, bienvenido.

The UX Visualization Diaries · Number 1

Someone once accused me of not doing visualizations. Although that is not actually true (I’ve done more than one and so that means there are a lot of people out there with a bad memory) However, I have to admit that it’s not a really my job.

My job, my function in the Visualization department – apart from designing user friendly interfaces, of course– is to make the visualisations of my team more understandable:

Trying to prevent them putting 20 variables in the sae graphic in an attempt to demonstrate that it can be done, just for the sake of it.

Sometimes I managed to do it. Sometimes I didn’t.

That’s the reason why I decided to write this series of blog entries dedicated to analyzing things that are not clear or aspects that could be improved upon, always from the UX point of view.

Taking Tuftte’s work as a base, Fernanda Viegas and Martin Wattenberg wrote a blog entry titled Design & Redesign which suggested that Data Scientists should not only criticize other people’s work but improve on it with suggestions on how to redesign the visualization and  I’ll try to analyze them respecting their original style.

Journal visualization, the number of publications are represented by the volume of circles

First I’ll confess that I chose this representation: Jounals, because I thought, at first glance, that it was appealing and easy to analyze. I also wanted to prove that my point of view coincided with, or at least complemented, the view of experts (my boss basically). And they did.

The first problem we see is that depending of the subject or type of publication we see a different time period (from 2004 to 2013, from 1970 to 2010…)

The question is why not represent the same time period for all graphs to show  that they don´t have any data in some years.

A different problem is the time step which is changing throughout the different graphs: every two years, every five years…

different step in timelinedifferent step in timelineAfter thinking about the color range, in the end, I deduced it was not relevant. The color range selected only tries to differenciate one line from another, but some users could have thought: Does the range (Blue, red, green) mean something? Does the color intensity mean something else? Is the light blue more relevant than the dark one?
And the last and most important design error: Why are some totally different values represented with the same/similar radius?


The basic problem is that for every line they have changed the relative radius. So if you don´t see the values beside two similar circles you might think they are hiding a similar value, but they don’t. One circle could have a value of 20, while a similar circle could have a value of 2. So at first glance, and without any interaction you can’t compare the two graphs (or even two lines) easily.

Big Data Evolution with TimeMapper

Today we will review an easy way to display some data according to a timeline in three steps:

Although sometimes it’s possible to use another type of visualization, if you don’t have too much time, TimeMapper may be a good option.

  1. In this example, you only have to prepare a spreadsheet on google drive with the following columns:

I collected the information from Dezyre web:  web:

2. Once you publish your file from drive:

publishing your document

3.  Then you simply have to enter the link in the configuration page of  TimeMapper and decide a title for your timeline:

Time Mapper configuration

And at the end, just publish it and here it is your timeline:

BigData timeline

Quick, easy and a different option to explain a story.