Can the ZedGraph charting library for .NET be recommended?

mustafabar picture mustafabar · Feb 11, 2009 · Viewed 15.7k times · Source

I am working on a project for my company, and I need to integrate some graphs of different types and average complexity to C# in the process of studying stock markets. I found this free library on the Internet, ZedGraph. If you came across it, do you recommend using it? And how well is it supported?

Answer

Peter Mortensen picture Peter Mortensen · Jul 7, 2009

I can recommend ZedGraph. I have been using it with great success for several years in MSQuant, for most plots: mass spectrum display, recalibration error plots, LC peak plots, quantitation profiles and others.

Here are some screen-shots from MSQuant where ZedGraph has been used:

  1. Scatter plot, with trendline
  2. X-Y plot with the actual data points shown, line connection data points
  3. Sticks plot, with overlayed annotation (TextBoxes, in fact)
  4. Several plots in the same window, types as in 2. and 3. (the two plots in the bottom half)
  5. Closer look at type 2.
  6. Collage, type 2. and code in Visual Studio

The source code that is behind the first plot can be found in Source code for MSQuant: frmRecalibrationVisualisation.vb, MSQuant/msquant/src/GUI/forms/frmRecalibrationVisualisation.vb..

In contrast to many other charting libraries, ZedGraph can also be used for scientific/math oriented plots/charts (for example, scatter plots) and not only for business type plots/charts. Stock market applications may also need scatter plots.

In ZedGraph, there is built-in support for the user to zoom in (infinite) and zoom out, pan (drag while holding down the Ctrl key), save the plot to a file or copy it to the clipboard.

There is one thing I am missing in ZedGraph: the ability for the user to select items in the plot in order to perform some action on those selected items (for example, computing some number, accepting them as verified or marking them as outliers to the application program).

Don't be put off by the state of ZedGraph's development. ZedGraph is mature, is of very high quality and can be used as-is. There is supposed to be a new team behind its further development.