Lecture on Oct 28, 2010.

Guest lecture by Mike Bostock and Mike Migurski.

Slides: Part1, Part2



rakasaka wrote:

"The machine can greatly reduce time and drudgery of production, but it must not replace or interfere with the designer's choices".

How we can echo that sentiment in light of the recent homework! Interference is perhaps the most frustrating thing - that "gulf" between what I want to do and what I can do (execution, in a sense) is considerably wider when it comes to new technology. Regardless, I think one of the delights of using technology particularly in maps is that one can no longer be constrained by size - with the proper tools the visual design space is pretty infinite. It perhaps goes without saying that that very notion should not be abused, but I think one of the delights of Google Maps, for example, is that one can easily scale from macro to micro and even overlay kml or gis information to obtain a lot more interesting information.

On a side note, I was wondering if anyone had thought of doing eye-tracking for cartograms. Even for maps I could only find two papers: "Applying Eye-movement Tracking for the Study of Map Perception and Map Design" and "A Usability Study of WebMaps with Eye Tracking Tool". It would be interesting to add a dimension of "interpreting another dimension of data" to it.

msewak wrote:

Some interesting points from the lecture and reading for today: Cartograms use map distortion as an additional way to encode data! Mercator projection exaggerate areas as we go away from the equator, and varying luminance can help fixing that I thought it was really cool that the flow map describes geography without actually drawing the map - the locals and tourists map was awesome. It is such a simple visualization that displays the country in a resident's view and tourist's view From the reading, the two variable cartogram that shows the population of American Indians in a population cartogram for US was really informative. We were thinking of using cartograms for our visualization and this lecture was fun!

wulabs wrote:

This is very interesting! In my assignment3 i was playing around with google maps API so this fits right in! Google maps API used markers or pins to place points of interest. They also had a utility called a batcher which basically put a larger pin in an area where there were already many pins. This is similar to the value of the cartography PDF where pins can have different weights. Instead of just jamming a bunch of pins into a single area, you can use a single larger pin that represents a collection of pins.

msavva wrote:

I really liked how the lecture emphasized the importance of desired focus when creating maps, especially with respect to the choice of projection and scale. As is the case for all visualizations, one needs to consider the advantages and disadvantages of each choice with respect to providing the appropriate context for a given task and making reading of the data easier. Invariably, a compromise has to be made, something which was effectively illustrated by all the examples of map projections.

Incidentally, I tracked down the online dymaxion projection interactive visualization that Mike Migurski referred to: "Faumaxion Slippy Map". Another interesting online applet that can visualize a ton of other projection systems is available here. It's so much fun to just play around with these projections (that's probably a testament to how powerful cartography visualizations are in engaging people).

gneokleo wrote:

I found the different kinds of ways you can draw geographical maps very interesting however for some maps like the cartogram or the circular maps ican see how they can confuse some readers who are not very familiar with the geography of an area. I think this would be a really good pairiing of animation between a regular geographical map and one of the other types of maps mentioned above.

estrat wrote:

Here's a youtube link[1] from The West Wing talking about different map projections and their political implications (~4 mins). It mainly discusses the Mercator and Gall-Peters Projection maps.

Also, talking about the different levels of details in maps made me think about fractal coasts[2], where the size of the coast changes depending on how closely your measure. Ultimately, you have to decide what level of detail is meaningful based on what you're interested in.

[1] http://www.youtube.com/watch?v=n8zBC2dvERM

[2] http://en.wikipedia.org/wiki/Coast#The_coastline_problem

yanzhudu wrote:

I was doing countries' growth statistics. I was using stack chart. After today's lecture, it may be a interesting to try overlay countries' data on world map. However, this case, time series data would be difficult to present and compare across countries. Maybe animation can do the trick.

clfong wrote:

Map projection is such an interesting area that differential geometry comes into real life. All the hard work in creating different projections trying to preserve some aspects of a map when drawing it on plane lies deep in the fact that Gaussian curvature is an intrinsic geometric property for any two dimensional manifold. It is impossible to create a mapping from a spherical surface to a plane, while at the same time preserving the metric on the surface.

I am so excited to see so many interesting ideas that people trying to sacrifice one property over another to draw a map that fits each particular use case.

strazz wrote:

One stood out the most to me about today's lecture was the fact that using the same kind of main visual encoding ( in this case geographical) is it still possible to represent data on such a wide variety of interesting ways, from data heavy, to interactive or even to artistic representations. On top of that, is was also interesting to see how real world geometry affects how we manipulate data in order to represent it on a 2D plane. Another thing that was interesting that has not been brought up, is the use of the "right" colors to use in heat maps ( among all other color encoded visualizations), since it tied up very nicely with the previous lecture.

lekanw wrote:

The discussion of projections today reminded me of this amazing and relatively comprehensive table of cartographic projections: http://www.radicalcartography.net/index.html?projectionref

In addition, I'd like to support whoever in class said that choropleth maps have the problem that the areas typically do not encode a metric (besides the trivial metric of the area of the region), so the use of value encoding is often exaggerated by the side of the region, even if normalized by area or some other metric. For example, we've all probably seen the choropleth maps of the spread of the seasonal flu, usually correctly normalized by population. But outbreaks often start in densely populated areas, where county sizes are small. So, even when the density climbs up, the signal is often hidden by the larger nearby counties.

mattbush wrote:

The part of the lecture about different levels of detail makes me wonder to what extent different levels of detail on mapping websites are, or should be, determined algorithmically.

For example, using the population of a city to determine whether to display the name of the city at a certain zoom level may be a good measure in general, but there may be some exceptions to this rule (such as San Francisco, which is more prominent but less populous than San Jose).

Or there may be conflicting algorithms, such as algorithms that are labeling states and labeling cities at a low zoom level. For example, New York City is not labeled in this particular Google Maps zoom level, because the state labels are taking priority, although many other smaller US cities are displayed: http://maps.google.com/maps?hl=en&ie=UTF8&ll=36.879621,-86.572266&spn=30.818698,61.611328&z=4

Another algorithmic challenge is when to display roads. Google first displays interstates, then US highways, then state highways, then county routes, arteries, and minor roads. This works great in most cases, although at one particular zoom level, it appears as though no Central Valley cities are connected by a freeway: http://maps.google.com/maps?hl=en&ie=UTF8&ll=36.385913,-119.454346&spn=3.899828,7.701416&z=7 Granted, this is not a mere fluke in the map's algorithm, it a strange fact of U.S. geography, where the largest cities in the country not connected by an interstate reside. http://en.wikipedia.org/wiki/California_State_Route_99

amirg wrote:

It was really cool to see so many different types of maps in this lecture. I think that one of the most difficult part of using a map to visualize data is that there is already a natural spatial encoding being used for the map, so the choice of visual encodings for the data is generally restricted and of course the space of the visualization is also restricted by the map. All the maps we looked at try to solve problems that seem to arise because of the relationship between the data and the spatial encoding. For example, cartograms attempt to solve the problem that larger regions in the map draw greater visual importance. Given the encoding restrictions imposed by a map, it was amazing to see so many creative solutions to some of the common issues that come up when trying to use maps to represent data.

And of course, if anyone hasn't checked it out yet, take a look at PolyMaps, http://polymaps.org, which has even more cool examples. Though I haven't used it, I like the PolyMaps idea that drawing maps should be simple and it should not be difficult to encode data on a map. I can see that they have clearly embraced this based on the shortness of source code in the examples on the website.

jasonch wrote:

I thought it's very interesting how this lecture relate to the lecture on colors. Particularly, Tuesday we sort of hint that color blending is something we should watch out for and avoid. But the example of the Tree+Cab+Crime uses color blending and half-tone to convey the story. By allowing the colors to blend, it shows information about how two data dimensions relate. I think this could be a powerful tool that we can explore!

jsnation wrote:

I really enjoyed the lecture, and appreciated the simply guidelines for what types of map visualizations work for what types of data. One thing that we didn't hear much about were 3D map visualizations. I got the chance to make a somewhat visualization centric project this summer at my job using Nasa's World Wind framework for Java (also for .net) http://worldwind.arc.nasa.gov/java/ . This was a really cool framework for creating map visualizations in both 3D and 2D. One of the neatest features is that you can easily switch between 3D and 2D views of your visualization because the 2D is just a projection of the 3D scene. I realize that this type of tool is probably overkill for simple visualizations, as the toolkit is meant primarily for highly accurate geo-spatial stuff - but it looks really cool, and is pretty easy to use as far as APIs go. The 3D/2D map combination can work well if you have data based on elevation (which can be visible in 3D), or data for visualizations of things in space, like satellites.

mariasan wrote:

Man, I wish I had heard this lecture before I started my assignment. I spent a lot of time doing manual work that might have worked better in polymaps. Super interesting and fun subject though, I might do something with maps for the final assignment too!

I've been pondering if it's always a bad idea to use color field encoding on a map areas, using raw numbers. I get the argument that ratios are better, but if you don't have the areal information I think color fields are still better than many other alternatives. While working on assignment 3 I realized that drawing dots to represent populations exaggerates the small area looking more dense effect more than color fields do...

jtamayo wrote:

I found really interesting the XKCD comic for plotting the IP address assignment in the world. More than being funny, it shows how to map a single-dimension variable to a two-dimensional representation. It's also an excellent match for this type of data: it shows the size of the address space as area, naturally plots together areas that are together, and by drawing the exact values on the graph makes it possible to go back to the 1-d representation.

Here's the typical link to space-filling curves in wikipedia, and the particular curve used on this graph (the Hilbert curve, I believe)

http://xkcd.com/195/ http://en.wikipedia.org/wiki/Space-filling_curve http://en.wikipedia.org/wiki/Hilbert_curve

hyatt4 wrote:

I went up and asked the second Mike a question after class about the business side of things. I was curious how his company had worked out the arrangement for their project with NBC (or was it MSNBC) to create the hurricane tracker. This may not be anything new to someone reading this, but I could only speculate on how a company like his earned a profit. Mike said that their company develops a contract per job. Essentially, they provide a service for whoever hires them and the hirer then gets to keep whatever product Mike's company produces. There was no licensing involved here or continued claim of their work. Once they were done, the parent company owns everything. Now, they also can hire themselves out at an hourly rate for touch-up tweaks, maintenance and the like. For the case with NBC, he said that they had a competent team that could sustain their product as hurricanes came and went, however they were recently hired again to add some additional features to the hurricane tracker which Mike's company then billed at their hourly rate.

jbastien wrote:

@hyatt4 very interesting question to ask! It's an interesting business model and has a very "artisan" feel to it while still being CS-y.

ankitak wrote:

This reminds me of a discussion with some friends (particularly Joe) on tangentially related work by mathematician BenoƮt Mandelbrot on measurement of coastlines - http://en.wikipedia.org/wiki/How_Long_Is_the_Coast_of_Britain%3F_Statistical_Self-Similarity_and_Fractional_Dimension.

esegel wrote:

@msewak "I thought it was really cool that the flow map describes geography without actually drawing the map"

Check out this link: http://benfry.com/allstreets/

This map charts the road system of the United States. Roads tend to go around mountains rather than over them, and around lakes rather than through them. As a result, by just charting roads alone you get an implicit picture of the country's geographical features (e.g. look at the inset of the eastern seaboard and the Appalachian Mountains). At the same time, it gives a vibrant picture of population density (e.g. compare the West to the East), accessibility, and different ways networks of roads can connect cities, towns, etc.

I love this visualization.

Follow up: Apparently this visualization was done by Ben Fry, the same designer of the "zipdecode" example in class.

arievans wrote:

To be quite frank, I was absolutely blown away by this presentation. For whatever reasons, I never properly valued how powerful maps are for visualizations and just how much information can be encoded within them. Perhaps more importantly, however, I didnt realize the complexity of issues that are at play when working with cartography for data visualization. I thought I got a bit of a taste when I was going through the Protovis tutorial and had 4-5 different options for projections on the map, but that was barely scratching the surface.

This lecture actually got me thinking about a new potential for interactivity relating to a sideproject that I work on outside of class: [LessThan3.com];. Namely, I'm interested in potentially addressing the issue of sort of how to comprehend a map full of data in a more detailed way. We are currently working with data on top ranked DJs over the past 5 years, and the data has a nice international spread. I want to point out the ranking of data on the map, but also want to provide more information as I step users through the rankings.

What I'm sort of thinking of, potentially as the final project of this course, is to build a visualization technique for interactive articles on the web that pertain to map data. Hmmmm..... If anyone finds this interesting, please let me know!

sholbert wrote:

After reading the paper I identified a couple insights. Here are the most significant ones:

* Using irregular polygons can better help estimate areas.

* Contiguity really is insignificant. People don't keep track of region border length, just the way in which regions are ordered

* Simplicity, angularity and regularity are shape qualities that make objects more recognizable.

adh15 wrote:

Adding interactivity to map projections changes the analysis of trade-offs between different projections. For example, if people can change the focal point for a given projection, then it may be more acceptable to distort area. Additionally, I was impressed to learn about the way Google Maps skirts around this issue since the local distortion for a particular zoom level is trivial or nonexistent.

asindhu wrote:

I think that flow maps were probably my favorite technique from this lecture. Sankey Diagrams were also briefly mentioned, so I looked into those a bit more. It turns out they're variants of flow maps usually used to specifically show energy or material flows, with the width of the arrows being proportional to the flow (like the famous Napoleon one we've seen a hundred times). The fact that such a specific type of visualization is a class unto itself indicates to me that it's probably a very effective way of communicating information. In fact, by many measures of what makes a good visualization that we've learned so far in class, Sankey diagrams stack up pretty well. Using width as a quantity encoding, using color to separate flows into nominal categories, etc.

I also wanted to share this very intense example of a Sankey diagram/flow map of Internet traffic: Global-Internet-Traffic-Flow-Map

selassid wrote:

The sheer number of different kinds of maps is awesome. What I didn't get a sense of from the talk, though, was the number of ways that such a rich set of data can be stored in the computer. The Mikes touched upon tile-based systems, but I am now wondering about what sorts of other data structures should be used to hold map information for quick access and display? What techniques take a viewpoint and find out what edges in a list of borders are visible in a way that scales well. I guess you could do something using quadtrees and/or precomputing to be able to decide what is visible more quickly. But are there more novel ways of storing map data than edge lists?

ericruth wrote:

First off - maps are the bomb :) Ok, now that I got that out of the way, I'd like to say that this lecture and the one on color were two of my favorites so far this quarter. Jeff, this has nothing to do with your lecturing, which is awesome, but I find both of these topics fascinating. In particular, I wish we had the maps lecture before starting assignment 3 because it would have provided great ideas for map-based visualizations (although I'm sure my opinion is skewed by the fact that I did a map-based interactive visualization).

One thing I'd like to bring up here is a "shortcoming" of choropleth maps. I think a lot of the discussion about them has been negative because of the argument that area often doesn't encode information and therefore is misleading, but I would argue that this is often not such a big issue. I feel like choropleth maps are getting a worse wrap than they deserve. While I agree that a choropleth map that represents some absolute value can be misleading, I think choropleth maps that represent percentages are quite clear and not so misleading. Especially in the case of a "bucketed" coloring system, it's usually pretty clear what bucket a region falls into. In such cases, I think a color coded map provides a great recognizable context without causing much confusion in data interpretation. That just my opinion, though...

nikil wrote:

I absolutely loved this lecture on maps! It was fascinating from the simply visually pleasing sense to the technical dive into the different map projection techniques. I loved how they both went into detail about the different ways to visualize maps technically online and delved into the structure behind mapquest, google maps, and bing maps. Explaining the tiling and zooming techniques were also very interesting since they you don't really think about them when you are using the maps and seem slightly obvious when you think about it but then you find out that there is actually a lot of really complicated stuff going on behind the scenes that ultimately gives you the seamless experience of using those mapping platforms. I really enjoyed the combination of the technical dive with the higher level overviews of the really pretty maps.

Leave a comment