Data-intense, design-simple graphics

Say you're writing a report on how your Web site's sales system has been performing, and you want to show the VP of sales the important statistics. You could hit her with one big graph or a set of graphs created in Excel, but you know she's not going to focus on anything that is too techie looking. Even so, you want to get the information into her brain as easily as possible.

You want to be persuasive and effective, so what you're really trying to communicate are trends rather than detailed data. In this situation a technique called sparklines might be the way to go. Invented by Edward Tufte (professor emeritus of statistics, graphic design and political economy at Yale University, and a critic of using PowerPoint for presentations) sparklines are a simple, elegant idea. According to Tufte, sparklines are "data-intense, design-simple, word-sized graphics." According to us, sparklines are miniature, in-line graphs.

Here's an example:

Oil prices fall for 7th straight session

The distinction between regular graphs and sparklines is subtle and powerful. Your average Excel chart most often is used to show as much data as possible, typically standing by itself, separate from the text that describes it.

Sparklines, on the other hand, are intended to be part of the stream of text, instantly understandable without adding unnecessary detail. You can find Tufte's explanation of sparklines at

Note that sparklines don't have to be lines - they can be bars, pie charts: whatever gets the message across.

To create sparklines you have several alternatives. You could create them in Excel, but that is not easy, even with a macro. Better choices would be a Web-based service that creates sparklines for you or software that operates as an add-in for Microsoft Office applications.

Our favorite Web-based service is the Sparkline Generator Web Application ( by Joe Gregorio. He provides an interactive sparkline generator and makes the CGI code available for free, so you can run the software on your own server.

His implementation is really nice; this reference to CGI code in a Web page . . .

Sales started to slump yesterday.

. . . will produce a sparkline like this:

Sales started to slump

It would be easy to modify the sparkline.cgi request to work with dynamic data by using Asynchronous JavaScript + XML.

If you want to add sparklines to your Microsoft Office 2000, XP and 2003 documents, you might want to check out Bissantz SparkMaker.

SparkMaker installs itself into Word, Excel and PowerPoint. It becomes available as a nonmodal pop-up when invoked from the application toolbar and provides a window where you enter your list of values and set up how the sparkline will be displayed. The output is inserted into the current document as a graphic or as text (using Bissantz's SparkFonts; go to for details).

Under Excel it adds a function that creates a sparkline in a cell. Very cool.

Our only complaint is that SparkMaker needs a feature to reverse the order of the data - often data you copy from somewhere else is in the wrong order. So it would be much better to not have to paste the data into Word and then sort it, copy the new version and paste it into SparkMaker.

SparkMaker is really cool and is free for private and academic use, but at US$199 for commercial use, it is rather expensive.

Join the newsletter!


Sign up to gain exclusive access to email subscriptions, event invitations, competitions, giveaways, and much more.

Membership is free, and your security and privacy remain protected. View our privacy policy before signing up.

Error: Please check your email address.

More about CGIHISMicrosoft

Show Comments