# Resources for learning to create data visualizations?

I'm interested in learning how to create the type of visualizations you see at http://flowingdata.com and informationisbeautiful. EDIT: Meaning, visualizations that are interesting in of themselves -- kinda like the NY Times graphics, as opposed to a quick something for a report.

What kinds of tools are used to create these -- is it mostly a lot of Adobe Illustrator/Photoshop? What are good resources (books, websites, etc.) to learn how to use these tools for data visualization in particular?

I know what I want visualizations to look like (and I'm familiar with design principles, e.g., from Tufte's books), but I have no idea how to create them.

-
Should probably be community wiki? – Shane Aug 27 '10 at 22:46

Flowing data regularly discusses the tools that he uses. See, for instance:

He also shows in great detail how he makes graphics on occasion, such as:

There are also other questions on this site:

IMO, try:

1. R and ggplot2: this is a good introductory video, but the ggplot2 website has lots of resources.
2. Processing: plenty of good tutorials on the homepage.
3. Protovis: also a plethora of great examples on the homepage.

You can use Adobe afterwards to clean these up.

You can also look at the R webvis package, although it isn't as complete as ggplot2. From R, you can run this command to see the Playfair's Wheat example:

install.packages("webvis")
library(webvis)
demo("playfairs.wheat")


Lastly, my favorite commercial applications for interactive visualization are:

-
+1 for R and ggplot2 – radek Aug 28 '10 at 0:01
Awesome, great links! I already use R and ggplot2, but the visualizations from there seem more of the "graphics for a report"-variety, than of the "eye candy/visualization interesting in of itself"-variety I'm looking for. (ggplot2 is super beautiful, but it's not really meant to allow unlimited creativity.) Am I wrong?, or do you sometimes use R/ggplot2 as an input into another visualization tool? – raegtin Aug 28 '10 at 4:28
thanks for the links – suncoolsu Nov 17 '10 at 5:57

Already mentioned processing has a nice set of books available. See: 1, 2, 3, 4, 5, 6, 7

Python might be another way to go. Especially with tools like:

All projects are well documented on the web. You might also consider peeking into some books.

Lastly, Graphics of Large Datasets book could be also some help.

-
 igraph works in R also; for 3D openGL accelerated vis in R, use rgl & misc3d packages. – mbq♦ Aug 28 '10 at 9:41 Also matplotlib plots are ugly; they may be nice for a long-years gnuplot user. – mbq♦ Aug 31 '10 at 14:23

You'll spend a lot of time getting up to speed with R.

RapidMiner is free and open source and graphical, and has plenty of good visualizations, and you can export them.

If you have money to spare, or are a university staff/student then JMP is also very freaking nice. It can make some very pretty graphs, very very easily. Can export to flash or PNG or PDF or what have you.

-
1. IMHO time spent with R is well invested if you plan to do anything serious. 2. Also consider KNIME knime.org as RapidMiner alternative. – radek Aug 28 '10 at 0:01
(+1)@radek. I am also a rapidminer fan, but in my opinion it is not flexible enough for sophisticated visualizations. – steffen Feb 16 '11 at 13:39
If you have any coding experience, then you won't really need more than a day or so to get up to speed with R. It's pretty straight forward, as far as languages go, and there are some excellent online tutorials. – naught101 May 13 '12 at 23:51

Another good alternative is the protovis library http://vis.stanford.edu/protovis/

Its a very well crafted JavaScript library that can create some beautiful visualizations if you have the time and ability to write the modest amount of JavaScript code needed.

I also highly recommend Tableau http://www.tableausoftware.com. Its great for rapidly exploring data sets and creating many different visualizations.

Both products have roots at the Stanford Visualization Group.

-

R is great, but it is not that R is difficult to learn it's that the documentation is impossible to search for any other name like Rq would be great. So when you got a problem, searching for a solution is a nightmare, and the documentation is not great either. Matlab or Octave will be great. And to get those plots in R or Matlab would be very very tedious.

IMHO post processing visuals is the best route. Alot of them from flowing data are put through Adobe Illustrator or Gimp. It is faster. Once you get the structure of the plot, then change details in an editor. Using R as an editor does not give you the flexibility you want. You will find yourself searching for new packages all the time.

-
 R; function?? - R has inbuilt help. you can also usually search for "cran" to find R stuff, and I find that most major search engines can handle the single letter well enough. – naught101 May 13 '12 at 23:52