Now we move on to two additional methods that belong to the class of methods that change the data. The first one is aggregation. What is aggregation? While it's pretty straight forward. The idea here is, using interaction to change the level of aggregation or the level of details that is used to represent and visualize a given dataset. In particular, there are two types of attributes that lend themselves to this kind of situation, to this kind of method. Every time we are visualizing spatial or temporal information, we always have in principle this option of representing more information with more or less details. As we have seen in the previous modules when we talk about space and time we can always represent information in space and time at different levels of granularity. Let me give you an example. So, here we have a map that shows the amount of products sold across the US for a given company and the size of the dots here of the bubbles represent the amount of products and color represents the amount of profit. The average amount of profit. Now I can show this same information at different levels of granularity. We can do that at the state level, at the city level or at the zip code level and what is interesting is that all of these representations can be in principle very useful to answer different types of questions. There are questions that I can answer with a lot of details but it's harder but there are other questions that is too hard to answer with too many details and the opposite is true as well. So, there are questions that I can answer with a very coarse visual representation like the one at the state level, but I can't answer but there are other questions that I can answer at this level of granularity. In turn, this means that being able to interact with the visualization in order to change the level of granularity is a very useful type of interaction and in particular is the type of interaction that changes the level of aggregation or level of granularity that is used in the data before it's mapped to the visual representation and that's the reason why we talk about interaction that changes the data before it's visualized. So, if you think about information visualization pipeline that I've shown to you at the beginning this type of interaction is happening at the data level. A very similar one is as I said at the beginning when we change the granularity of time so let's say that we want to represent a measure over time so here I'm using the same dataset and we have profit over time. In this specific line chart, I'm using as a granularity quarter. So every single data point represents the profit for a given quarter. But I can represent the same data at the level of months or at the level of weeks and so on and once again it's always true that there are patterns that can be discerned better at a high level of granularity or low level of granularity and that's the reason why being able to interactively change the level of granularity is very very useful and very powerful method in general to use in interactive visualization.