asp:review
ChartingControl.NET 1.6 for ASP.NET 2.0
Simple to Use, Inexpensive, and Easy to Deploy
By Steve C. Orr
There are many third-party charting controls available for
.NET development. Many are big, fancy, expensive software systems offered by
major brand name software companies. They can be difficult to deploy, often
involving complex dependencies and GAC registration requirements that may be
difficult (if not impossible) to deal with when deploying to shared Web
servers. Such charting packages often have steep learning curves that can
involve a developer tinkering for many days to get moderately complex charts to
appear as desired. Licensing is often nefarious, too, with headaches often
being caused by such things as trying to figure out if the control used by
developer 1 on project A using server X can be legally used by developer 2 on
project B using server Y. And good luck getting management to sign off on the
large price tags frequently associated with such systems.
With that in mind, I m pleased to introduce you to
ChartingControl.NET, which provides a development experience exactly opposite
of the description above. It s simple and inexpensive, has a small footprint,
and couldn t possibly be any easier to deploy.
Getting Started
The free demo download of ChartingControl.NET is quick and
simple, with the zip file weighing in at just over 6 megabytes. There is no
setup program, however, so setting things up requires a few basic manual steps
that I d prefer to be automated. There are two sample projects included, a
fairly thorough help file, and the dependency free ChartControl.dll.
After creating a new Web application and adding the
charting control to your toolbox, it can be dragged onto any Web form for a
reasonably rich design-time experience, as shown in Figure 1.
Figure 1: With a variety of useful
configuration options, ChartingControl.NET presents a smooth design-time
experience.
The smart tag allows customization of the most common grid
properties, and of course the standard Visual Studio property window can be
used if preferred to set any of the 80 editable properties available there. Alternatively,
the settings dialog box shown in Figure 2 is a convenient way to configure
settings and to input static or test data.
Figure 2: The settings dialog box for
ChartingControl.NET is a useful way to configure a graph.
There are 39 chart types, including many variations of bar
graphs, pie charts, line graphs, radar charts, and even geographic maps. The
output for the majority of the charts is absolutely beautiful, rivaling many
charting controls that cost several times as much. While the charts render as
images by default, simply setting the UseFlash property to true will cause most
charts to render as flash animations, with bars and lines dropping and bouncing
into place. The animations are highly customizable through a variety of
property settings, although I wish there were a way to get the animations to
finish faster than is currently allowed.
Unlike some competing charting controls, individual bars,
lines, and other data points can have their own labels, tooltips, and click
events for rich interactive feedback and drilldown functionality.
Code Mode
A basic ASPX declaration for ChartingControl.NET is shown
in Figure 3. While most properties can be configured in the source view shown in
Figure 3 or in the design-time windows shown in Figures 1 and 2, they can also
be set at run time with intuitive syntax such as that shown in Figure 4.
<cc1:ChartCustomControl ID="ChartCustomControl1"
runat="server"
BackColor="#DDDDDD"
EllementOpacity="230"
EllementsStartupAnimationDuration="1"
Height="379px"
Type="StackedSurface3D"
Width="471px">
<MapXML></MapXML>
<GraphTitle>Sales
by Month</GraphTitle>
<DataSeries>
<cc1:DataItem str="values1" />
<cc1:DataItem
str="values2" />
<cc1:DataItem
str="values3" />
</DataSeries>
<Colors>
<cc1:ColorItem
color="Red" />
<cc1:ColorItem
color="0, 255, 0" />
<cc1:ColorItem
color="Blue" />
<cc1:ColorItem
color="Yellow" />
<cc1:ColorItem
color="Purple" />
<cc1:ColorItem
color="Fuchsia" />
</Colors>
<UserImage></UserImage>
</cc1:ChartCustomControl>
Figure 3: A basic
ASPX declaration.
'Set the chart type
Chart1.Type = ChartType.Multibars3D
'Set the Y-axis data series values
Chart1.DataSeries.Clear()
Chart1.DataSeries.Add(New
ChartControl.DataItem("January"))
Chart1.DataSeries.Add(New
ChartControl.DataItem("February"))
Chart1.DataSeries.Add(New
ChartControl.DataItem("March"))
Chart1.Labels = "Date"
'Set the title of the chart
Chart1.GraphTitle = "Title of the chart"
'Bind the chart to a data source
Chart1.DataSource = MyDataTable
Chart1.DataBind()
Figure 4:
Properties can be set at run time with intuitive syntax.
As you can see, the syntax is reasonably simple for anyone
familiar with .NET and computerized chart creation.
All About ChartingControl.NET
ChartingControl.NET was developed in pure C# code. Its
small footprint, lack of dependencies, and ability to be deployed outside the
GAC makes it great for deploying to shared Web servers to which you may not
have complete control.
While this review covers the ASP.NET 2.0 version of the
control, there is also a 1.1 version, as well as Windows forms versions of the
charting control. For the paltry price of only US$250 you get a fully licensed
copy of the control that can be reused universally across any or all of your
company s applications. The full source code to the control can also be purchased,
although it costs about 10 times as much.
The free demo of the control is fully functional, although
it displays a notice across the front of every generated chart that says Not
for production environment (as shown in Figure 5).
Figure 5: The fully functional demo
of ChartingControl.NET displays beautifully rendered charts altered only by a
trial notice displayed across the front.
Well Worth the Price
The performance of ChartingControl.NET is snappy and
scalable. Its intuitive design-time experience and beautiful chart output could
easily be appealing to virtually any .NET developer. ChartingControl.NET may be
a little rough around the edges, such as a few typos in the documentation and
property names, but these minor nitpicks can be easily overlooked by budget-minded
software developers.
Outside Software, Inc. has quite an impressive initial
control on their hands. Because this is the company s only control, you can
expect focused support like few other companies could hope to provide. This
includes free lifetime support, beginning with 60 days of priority e-mail
support (send to mailto:office@chartingcontrol.net).
It also includes free access to minor version upgrades. An online forum or FAQ
would be nice additions to their Web site, although the online user guides and
product documentation are ample.
If you re in need of a good, solid charting control that
won t burglarize your budget, I suggest you download the free
ChartingControl.NET demo now and take it for a test drive.
Steve C. Orr is an
ASPInsider, MCSD, Certified ScrumMaster, Microsoft MVP in ASP.NET, and author
of the book Beginning ASP.NET 2.0 AJAX (Wrox).
He s been developing software solutions for leading companies in the Seattle
area for more than a decade. When he s not busy designing software systems or
writing about them, he can often be found loitering at local user groups and
habitually lurking in the ASP.NET newsgroup. Find out more about him at http://SteveOrr.net or e-mail him at mailto:Steve@Orr.net.
Rating:
Web Site: http://www.chartingcontrol.net
Price: Starts
at US$250