Geeks With Blogs


Bill Evjen's Blog Code, Life and Community

You see a ton of charting components out there for .NET. Whenever you look into any magazine for developers in the developer space, you will see all sorts of advertisements for charting components of every kind. One of the main things these companies show is the new fancy and shiny charts as proof that they are the obvious choice in your applications that you want to build. As a developer, you might look at this chart and say, "Wow, this is new and this would look wonderful in my application".

I am here to tell you that you are wrong and this assumption is just plain incorrect (sorry for being blunt).

When dealing with financial charting, your end users are only interested in getting a visual representation of a lot of data in a single glance. This "glance" just takes a lot longer when you turn your chart to a 3D chart or add too much visual noise to your charts. "Simplicity is KING" with charts. Remember this and repeat this ten times!

Here is a 3D chart of some performance data:


As you can see here, this chart may look cool to some as it is "new and shiny", "different", "modern", etc ... BUT it really is crap. The idea of a chart is to give you a visual representation of a large amount of data quickly and easily. You are going to want to do this with the least amount of visual noise as possible. Looking at this chart, it gets hard for your eyes to differentiate between the series items in the chart.

Now take a look at this chart:


This chart contains the same data, but it is quite a bit more readable. Here you have simple and flat lines and a line chart is really meant to be presented in a two dimensional fashion. So what if this charting style hasn't changed much for you in the last 100 years or so - it WORKS. You can read this fast and it conveys its points very well. There is no ambiguity in understanding its context.

The first 3D chart is a crazy example, but there are people actually doing this in the financial services world. The other approach in 3D is using something like tubes to represent lines to give the line itself a 3D feel. Again, bad bad bad. Don't fall victim to these types of charting ideas that you see in chart component advertisements. To make this chart even worse, you will also see some that have this in addition to shadows under the lines. How much visual noise do you need?

These non-workable 3D charts are starting to be shoved in our faces more and more as WPF and Silverlight have come to the scene. Microsoft, control vendors, and developers are really trying to show off the capabilities of the platforms they are presenting and show end users these really unusable and non-digestible charts.

I am not against WPF and Silverlight - on the contrary! I love these technologies and I think that it is quite possible to positively impact financial charting. How? Well, imagine a scatter chart:


A scatter chart can have a number of items on a page that represent an item in the collection and its place within an X/Y chart. You can also have a chart that utilizes this structure but also changes the size of the bubble based upon another factor (e.g. such as the worth of the item). An example of that is represented here:


Now in looking at how WPF might enhance this chart - let's say that your collection contains a large amount of constituents - let's say thousands. What could your chart look like in this case?


This is starting to look rather poor. The reason for this is the fact that there are so many constituents in the chart grid that they are stacked on top of each other and you are unable to really view the entire collection and how items in the collection relates to other elements within the same collection. This is really where technologies like WPF and Silverlight will have a dramatic impact. Imagine a situation in WPF where the elements are presented in the chart grid as a set of 20 items in the forefront while the other 980 items a bit more translucent - but still on the same chart (in the background). Then with some type of sliding capabilities with the mouse left click hold moving down or up you can slowly change the collection set of what is at the forefront allowing other items to fall back and become more transparent while the forefront items losing their transparencies.

My point is this - financial charting in the future should not change in how the data visual represented, but in the changing of how this data is interpreted on the chart and scouring through large collections of data can easily and intuitively be manipulated through WPF and Silverlight more so than ever before. I am really looking forward to the future of  these technologies and how they will allow you to quickly filter large series of items based upon specific criteria with relative ease. To me the power for XAML will be in the ability to quickly zoom into a complicated chart to the exact scenario you wish to see, much like Virtual Earth or Google Maps allows you to zoom from a full-blown Earth map to your community with just a flick of the mouse.

This will be the power in charting - it will NOT be in 3D'ing your charts and turning them into unreadable graphics.

Posted on Friday, June 6, 2008 4:17 PM | Back to top

Comments on this post: Wrong Perceptions in Modern Financial Charting

# Right on point
Requesting Gravatar...
This hit it right on point. I have been explaining this to some of my developers but for some reason, people always think: cool = practical. Which is B.S. because if you talk to any domain expert after (let's say) a 2 month test period they will tell you most of this 3D crap is crap.
Left by tawani on Jun 06, 2008 10:25 PM

# Ajax chart
Requesting Gravatar...
hey,that's great.but i think i have got some thing better than this visifire offered under open source and powered by silverlight.
Left by finny26 on Jun 09, 2008 12:03 AM

# re: Wrong Perceptions in Modern Financial Charting
Requesting Gravatar...
I agree with this good critic of charting as a 'fashion' (som many fashions are out there in other domains)

Meanwhile, I think that the way data can be presented may offer an interesting level of readability.
For an example (using Flash... but could also be made using Silverlight or wpf), see:
Left by Taoffi on Jul 24, 2009 10:08 AM

Your comment:
 (will show your gravatar)

Copyright © Bill Evjen | Powered by: