In the spirit of Dundas's WinWeb Combo specials going on this month and this month only, I decided to do a "combo" review; Dundas Gauge and Dundas Chart for VS.NET 2003/2005. There has been chatter among the VB.NET forum'ites about charting components and several expressed their favoritism of Dundas and their superior object model over some of the competing charting products. Having just reviewed the Gagnon-Harper chart, which is a different breed of charting component, I figured while my brain was still engaged in charting, let's dive into the Dundas products and see what we can find. As I mentioned earlier, this is a combo review of both Dundas products, Gauge and Chart.

Before I start into the Dundas Gauge review, I have to say how amazed I am at all charting companies these days. It seems as if to be a charting component vendor, you must be an expert in graphics and presentation, as that makes sense with the fact that presentation is what charting is all about. I can only hope, as I have witnessed in this weeks unraveling of Dundas's products, other companies will follow the lead of the charting companies in assembling top notch documentation, samples, and feature presentations as I have recently witnessed. Both Dundas Gauge and Dundas Chart have some of the best assembled, graphically, logically, and thoroughly, environments to learn how to use these outstanding products. I spent about 30 minutes with each product simply going through what they call the "Samples Environment" but it's more then just samples, it is a tutorial of what these products can do, then how to use them, in an expertly designed building block approach. Using charting products, and for the first time gauge products, the muscles in the back of my neck tense up as it always seems we have to be Ph.D. math scientists to understand and use charting. Although I admit I had that same feeling when I started, I believe Dundas's well presented tutorials have put my math phobias at ease. Impressed is an understatement. So let's get started...



This is my first look at a gauge product and I'm amazed at the potential uses for such a component. Because charting companies are the ones predominately coming out with this line of product, we again get stereotyped that this is simply a data presentation component. As you learn more about what Dundas gauge can do, you quickly realize the potential of this component which has interactive features, playback of a built in "history" or recording feature so gauge data can be replayed such as in a crisis review or financial event, etc. and tons more. The ability to use custom graphics or the plethora of graphics, templates, and styles that come with this product allow you full opportunity to create and design a unique application tailored to your specific requirements. There is clearly thousands of man hours of development in this product once you see the level of control, design, and customization available.

For those starting out, after having reviewed the gauge tutorials, you'll first want to dive into the "Wizard" menu option when right-clicking on the gauge control. The Wizard is well lorganized (see Figure 1 below) with real-time updating of your gauge object on the right side as you apply changes from the Wizard. This gave me a great opportunity to see what Dundas Gauge is capable of without having to dive into too much code. Wizards are great with this type of component as they offer so much control and have so much built in saving us time based on the templates and styles they invested their time into providing.


Figure 1. Dundas Gauge Wizard
The types of gauges you can create are nearly endless, but Dundas lists the various types as the following:
  • Real Time Gauges - Dundas Gauge for .NET was designed specifically to work in Real-Time, both for Windows Forms and ASP.NET applications. Its highly optimized data analysis and rendering engines allow for low CPU usage and high scalability.
  • Circular Gauge Type - Perfect for creating traditional Gauges, Dials and Knobs, the Circular Gauge Style comes complete with a comprehensive list of customization options to ensure that developers can get exactly the look and feel they need.
  • Linear Gauge - Another style of displaying data, Linear Gauges can be vertical or horizontally oriented, and includes a Thermometer style. Like all styles of Gauge, they are completely customizable, and come with a variety of pointer styles.
  • Numeric Indicators - Extremely useful on its own, or in addition to other Gauge types; Numeric Indicators help complement the linear and circular gauges. Numeric Indicators come with 3 different styles, including Mechanical (standard text), or 7 or 14 segment LED.
  • Interactive Gauges -Dundas Gauge for .NET was designed to receive input from end users. Use it interactively in a Windows Forms environment, as well as on the web using Smart Client implementation.
  • Data & Statistical Analysis - Built-in data analysis features such as calculating moving averages, min/max, value conversion, and the ability to fire notification events when data reaches critical or important levels. This allows Dundas Gauge to provide more meaningful output than the incoming data itself.
  • Combinational Gauges - Use the various gauge types (linear, circular, or numeric indicators) together, to create powerful digital desktop applications or other sophisticated visualization applications.
An example of the level of control within the Dundas Gauge is demonstrated by the break down of a gauge component as displayed in Figure 2 below.


Figure 2. Anatomy of a Gauge
Dundas Gauge is broken down into major elements such as Pointers, Ranges, Numeric Indicators, Scale Bar, Frames, and graphics control such as Anti-Aliasing support for smooth rendering of the pixels and glass effects. Gauge, both Windows Forms and the Web Forms edition also support animation effects. With it's thread safe model and high-performance rendering, you can easily use Dundas Gauge for real time applications such as nuclear reactor monitoring, games, temperature controls, speed displays, etc. A feature that is near and dear to my heart is the ability to add "Ranges." As seen above, a graphical area can be displayed either within a gauge presentation, or as in a bar graph where several bars are green, then yellow, then red. Why is this important? Take for example aviation. As a long time pilot myself, it is difficult to remember operations limits such as on an oil gauge, RPM gauge, etc. However, with the ranges feature, the developer can provide visual effects for a pilot to see when they are in limits (green band), slightly out of limits (yellow band), and out of limits (red band). This is a great feature to minimize errors in a critical environment, and as developers, we know it's one of our goals to make applications as idiot proof as possible.

As with any component such as this, a critical element is data binding. Dundas Gauge offers a "Value" property and a "ValueSource" property. The Value property is used to directly set the value of the gauge, as intuitively obvious as that is, yet the ValueSource is the most comprehensive method allowing binding to a Values collection. With a Values collection you can perform calculations on the collection of data and display the result programmatically, store history of input values (for later review) and use the Playback feature of the Dundas Gauge component to do exactly that, play back the data previously presented.

Keep in mind that gauge is not only a presentation system but also a method of user input. The interactive features of Gauge (using HitTest) allow you to build systems where end-users can actually rotate knobs, change settings, all by the click of a mouse or keyboard input. An example of a knob Dundas Gauge provides is shown below in Figure 3.

Figure 3. Knob Example
Dundas Gauge is available in both a Windows Forms and Web Forms version and during this month of December 2005, can be purchased on sale as part of WinWeb combo. I am certainly impressed with Dundas Gauge and look forward to integrating gauge components in my future development projects. The possibilities for these type of controls are endless and in the era of graphical user interfaces at its highest with competing MAC OS GUI's, we need all the help we can get. We owe thanks to Dundas and the other data visualization companies for helping us produce top notch applications investing their time and expertise compounded into our development.



Without a doubt one of the best object models and most feature complete charting components, Dundas Chart is tops in the industry for visual data presentation. With Dundas's experienced background in object oriented programming, building their .NET visual presentation components did not involve reinventing their processes but instead time invested in studying competing technology, exploiting their weaknesses, and developing a winning solution. Those that use components such as charting to present data within their applications will greatly benefit from this clear strategy and expertise. The types of charts one can create with Dundas Chart, either in Windows Forms or Web Forms, is endless. Dundas's engineers have taken the standard "flat" look of charts and added nice GDI+ effects to provide a polished and professional presentation. Gradients are clean, lighting effects are a attractive, and their system of handling "missing" data, smart labels, and formula capabilities set this charting component at the top of the list within this field.

Key features, as outlined by Dundas, include the following:
  • Full Visual Studio 2005 Features - Building upon the improved design-time features of Visual Studio 2005, Version 5.0 of Dundas Chart for .NET provides many new features that take advantage of the latest release. New features include full Visual Studio 2005 Integration, Smart tags, High Level Data Binding, Debugging Display, Data Series Visualizer and more.
  • Dundas OLAP Services- A complete set of .NET components designed to assist companies with fast, interactive, analytical processing of their multidimensional data, the Dundas OLAP Clients (Windows Forms and ASP.NET) are a ready-to-use, fully managed .NET controls that allow users to begin analyzing data in a matter of seconds with just a few lines of code. (Enterprise Editions Only)
  • Dundas Chart and Data Wizard (TM) - Easily create charts with the look and feel you need and easily bind it to your data with the advanced Chart and Data Wizard (TM). Use it to create new or to edit existing charts, and to quicken the learning curve with Dundas Chart for .NET.
  • Comprehensive list of Chart Types - A huge assortment of different 2D and 3D chart types, including all standard (Pie, Bar, Stock, Column, etc.) and many advanced (FastLine™, Polar, Gantt, Funnel, Radar, Box, Range and more).
  • Smart Labels - Smart Data Labels allow for less cluttered displays of data points, with a multitude of settings to get just the look you need (ASP.NET Enterprise Only)
  • Advanced data analysis and manipulation functionality - Apply built-in formulas to your data, filter out data points, handle missing or empty data in an elegant manner, group your data points and much more!
  • Advanced User Interface Support - The User Interface options offer many advanced end user customizations to charts in both Windows Forms and ASP.NET environments using SmartClient. These customizations can be accessed via the toolbar or using context menus accessed by right mouse clicking on a specific chart element.
  • Annotation Objects - Add a wide selection of annotations objects such as callouts, lines, rectangles, arrows, freehand annotations and many other styles. Annotations are perfect for highlight data, or for adding additional customizations to charts.
  • True DateTime Support - Dates and times are stored, manipulated and displayed using .NET DateTime values. Unlike other charting products, data can be plotted along the X axis as true DateTime values.
  • Design-time support that is second-to-none. Almost all properties (including collection properties), can be set at design-time instead of writing run-time code. In addition properties set at design-time are reflected in the chart image displayed in Visual Studio!
  • A comprehensive API that is completely object-oriented.

Select examples from the Dundas Chart Gallery:

Figure 4. Dundas Chart Samples
As with the Dundas Gauge product, Dundas Chart is extremely customizable as well allowing the developer complete control of the component for any use imaginable. Figure 5 below shows the architecture of a chart.

Figure 5. Anatomy of a Chart



Figure 6. Chart Wizard
Dundas Chart for .NET is simple yet incredibly powerful and extremely flexible when it comes to working with data. Data can be:
  • added at either run-time or design-time (data binding is available at design-time).
  • automatically adjusted for missing data using empty point support.
  • manipulated using financial or statistical formulas.
  • manipulated using copy, filter, group, merge, and split operations.
  • displayed using true DateTime values.
All data is plotted as a series, and each series consists of a related group of data points. Each data point consists of:
  • one or more Y values, which are the value(s) of the data points;
  • an optional X value that may determine where along the X axis a point is plotted.
Most chart types use one Y value. However, charts such as bubble, candlestick, range and stock chart types require more than one Y value since one data point consists of multiple values. For example, to plot one stock chart column four values are required: high, low, open and close. There are two ways to add data to a chart: using data binding or non-data binding techniques. Both methods can be used at either design-time or run-time. Data binding can be accomplished at design-time using either the Chart and Data Wizard™ or the Properties Window of Visual Studio. Data binding at run-time is very powerful. There are a variety of binding methods that can be used, starting from simple and ranging to more complex. Dundas Chart allows for binding to an incredibly wide variety of data sources, including all standard or custom objects that implement the IEnumerable interface. Examples are: DataView, DataReader, DataSet, DataRow, DataColumn, Array, List, SqlCommand, OleDbCommand, SqlDataAdapter, and OleDbDataAdapter objects. Dundas Chart comes with over 45 built-in statistical and financial formulas, allowing developers to manipulate and get the most out of their data. Copying, filtering, grouping, merging, and splitting of data is also supported.Many charts today treat Date/Time values as simple numbers, and additional work may be required to display the data properly, as well as being aligned. Dundas Chart, however, represents date and time values using DateTime objects. As a result working with data that has a Date/Time value is very intuitive and easy to do.

Dundas Chart has one of the most extensive lists for binding sources:
  • DataView object.
  • Data Reader objects (XML, SQL, OleDB).
  • DataSet object.
  • DataRow object.
  • DataColumn object.
  • Array object.
  • List object.
  • SqlCommand object (data binding using DataSource property only).
  • OleDbCommand object (data binding using DataSource property only).
  • SqlDataAdapter object (data binding using DataSource property only).
  • OleDbDataAdapter object (data binding using DataSource property only).
  • All IEnumerable objects.
Dundas Chart's features are near infinite! Additional areas to explore include extensive filtering, formula support, exports, printing, end-user customization with built in toolbars, templates, serialization, on and on. This is clearly one of the best charting components available on the market today backed by years of experience, a polished easy to comprehend object model, and a great value for your money. This is a component you can count on in my future Windows and Web applications, I can find nothing wrong with this component nor can I do it justice in less then a doctoral thesis, please visit Dundas's web site and download this fantastic component to add to your arsenal of polished presentation software.



During the month of December 2005 you can take advantage of huge savings on their WinWeb Combo's. Enjoy 50% savings this month only! Click here to learn more about the WinWeb combo offers today.

Dundas Web Links: