The Blog

OmniGraphSketcher: The Vision

by Robin on November 2, 2009

If you read our tagline, you might think that OmniGraphSketcher is all about “fast, simple graph drawing and data plotting.”

Which is true.

But why did we make such a program?  (Or if you like puns, what's the “point”?)  Why does it keep us up at night, and how do we decide which features should be improved first? In short, I want to tell you about our vision.

The first part of the vision has to do with quantitative ideasQuantitative means that scale is relevant.  It means it's valid to say that one thing is twice as big, far, tall, fast, costly, or experienced as another.  Quantitative ideas are central to scientific disciplines and an important part of most business and policy issues.  Thinking quantitatively allows us to understand and predict how different parts of the world relate to each other in a precise manner.  How will higher taxes affect the local economy?  How will this ratio of chemicals change the battery's charging time?  How does this bridge react to increasingly larger loads?

I emphasize ideas because quantitative knowledge is not limited to what traditional software tools have focused on: numerical data and equations.  Sometimes knowledge is less specific.  For example, you might just have a rough idea of how different price points affect the number of sales.  Or you might know how a new material behaves at room temperature but have only an intuition about what happens above 100 degrees.  These quantitative ideas could be a precursor to a more precise theory, or they could be as precise as they need to be, given the messiness of the real world.

The second part of the vision is communicating those ideas visually.  That's because often, the best way to explain a quantitative idea is through a picture.  This is true whether you have data, equations, or imprecise quantitative notions.  Would you rather have a table with 240 numbers, or a visual plot of that data?

data-plot

Is it more meaningful to specify f(x) = sine(x), or to see that function in the x-y plane?

sinefunction.png

And finally, is it more informative to talk generally about the relationship between quantity and price of a product, or to see an illustration of how the price affects the quantity demanded?

iphone-econ.png

Of course, words, equations, and tables of numbers are useful too.  But particularly when you're trying to communicate ideas to someone else, there's a good chance that a visual will make it easier to understand.

Communication does not just mean throwing information at someone; it means transferring real understanding in a reasonably short amount of time.  For this to happen, the receiver needs to get the information on a logistical level—say, a piece of paper or an emailed PDF.  Then they need to get it on a perceptual level—for example, notice that one data point is above another or that two data series intersect in a certain place.  And finally, they need to translate those visual inputs into something meaningful—say, that the market share of one product is overtaking another.

For successful communication to happen, all three of these levels must be met.  To facilitate the logistics, we try to provide easy ways to export and share your graphs.  To improve accuracy in perception, we use our knowledge of the human visual system to define and encourage best practices for information layout.  And to help make the visuals meaningful, we made it easy for you to annotate your diagrams in a variety of ways.

In summary, the vision of OmniGraphSketcher is to make it as easy as possible to visually communicate your quantitative ideas.

Hopefully, this gives you some hints about how we might expand the functionality of OGS in the future (though we can't make any guarantees).  For example, logarithmic scales and date/time scales are high on our priority list since many quantitative ideas are best expressed in those contexts.  We'd also love to improve your ability to annotate graphs by allowing equations or other pictures to be dragged onto the canvas.  (For now, you can only do this by exporting your graph to another program.)

This should also provide hints about where we're not headed.  For example, although pie charts are considered standard in some applications, they use a large amount of space, display a small amount of data, and are not well suited to the human visual system.  In other words, we don't think they have any visual communication advantages over bar charts, which we already include (more on this in a future post).  Another “standard” feature that we omit on purpose is the legend-in-a-box.  It's much easier to read a graph that puts each label right next to the data it refers to, and we designed OGS to make this easy.

As always, we look forward to your feedback.  We're most interested in the motivations behind requests—for example, “labeling lines” rather than “rotating text”.  And when possible, attach an example graph or diagram—since we so love visual communication.

 

Comments

Looks really good, Robin. I'm excited to see how OGS evolves.


Best, Noah

Noah Iliinsky

11.02.09 5:02 AM

Wow, nice post. I enjoyed reading it and I don't even own OGS (yet). I just love well-articulated reasoning. :-)


-Dennis

Dennis

11.02.09 5:37 AM

Good point about pie charts—and don't even get me started on 3D bar graphs and similar crap that Excel/Keynote/Numbers like to push.

Chris

11.02.09 6:42 AM

I agree with Chris re 3D, but I'm not sure pie charts are the bad to bar graphs good: both Garr Reynolds and Nancy Duarte seem to think they have their place, and I'm inclined to agree with them. Pie charts might not be better, but I'm not convinced they're worse…or even bad.

Keith

11.02.09 8:58 AM

There must be something wrong with your vision. Didn’t see “improved Automator support” anywhere =)

Daniel

11.03.09 3:37 AM

With all due respect - I think Omni is wasting time on this product - as a scientist in both physical and biological sciences, there are already plenty of excellent plotting packages around with much more power (origin, matlab, systat); omni should be working on its unique and very useful tools such as OmniOutliner - this product is falling by the edge - where is version 4? OO is such a unique and amazing program a niche - plotting graphs? there are plenty of programs out there.

unleash

11.07.09 12:37 AM

As a user of OmniGraphSketcher I have to say that it is almost perfect for making graphs. I'm in cartography and GIS so I know how important visual legibility is for communicating.


The only things I'd suggest are log scale axes, an easy way to rotate labels to match features and a way to set the size/colour of each data point according to a third numerical data column.

Rob

11.07.09 10:49 PM

Hello,

The Omni Team rocks - your software is excellent. However, I was just wondering why so much time is invested into making a good plotting program, given that so many good simple/advanced plotting tools are out there (e.g. origin, matlab, systat, etc) vs. working on a niche program like OmniOutliner - where Omni's product is so superior to anything that is out there and a unique piece of software.


Thank you!

unleashed

11.08.09 7:16 AM

While graphing software is out there, I have to admit it was nice to see how nice a graph could be produced so quickly.  The simple graph above, including data, before all the additions would make a decent print-version if clean PDF output is supported.


One thing that is hard to come by, to some extent, is graphing which supports the ideals of Edward Tufte on the mac.  It's a bit surprising it's hard to find- as you'd think mac users would be the first to support his ideas in data visualization.  Sparklines are hard to make in easy ways, the distribution graphs along axes, and axes which don't cross except where data exists etc., or supports the 95% confidence in data- all these concepts are hard to come by.  OmniGraphSketcher may want to pursue some of these visually appealing methods of Tufte's data visualizations.


Cheers!

-Allen


ps- personally, I use Matlab for data exploration and visualization because I've grown up with it.  It would be nice however, to easily import into something that gracefully produces the needed graphs- OminGraphSketcher appears to do this simply, so I may pursue it with an action script for some of my data- very interesting!

AllenH

11.12.09 7:10 AM

Part of my job involves creating graphs for Business Analysis. These outputs are created through Excel. The functionality that OGS offers is wonderful, it assists in creating better interactive graphs.  I would not involve in using other software like Matlab, R, etc as I would not be bothered learning a new language or package. OGS is intuitive and do not have to learn anything other than to remember to press D or F.


Would love to have the advantage to create Pie Charts and Bar Graphs.


Cannot wait for the updates with the new functionality.


The outputs we require are hi-res images, so if there is a functionality to output/export as hi-res it would be great.

Jayant

12.11.09 9:13 AM

I second the comment on taking OmniGraphSketcher in the direction of Edward Tufte's ideas.  This would be a great asset to the Mac community. Tufte is known for communicating ideas with graphs and that seems to be your notion as well so this is a great fit.

MarciaG

12.20.09 2:51 AM
Commenting is not available in this channel entry.