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?
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:
TextBox
es, in fact)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.
ZedGraph does not appear to be supported by the original developers anymore. However, you can find it as part of other projects where updates have been made.
For example, per this discussion on a ZedGraph project discussion list:
So I highly optimized ZedGraph for all the curves, and objects. Basically, I optimized how it uses GDI and specifically made it only draw objects that will fit in the chart.
So it scrolls and zooms now extremely efficiently even if I have many millions of objects on the chart. Plus it users nearly zero CPU when it's running in real-time as slower speeds for tracking financial charts.
I fixed a few defects also.
You can find a fork of the repo with the changes here.
I strongly recommend the Microsoft Chart Controls For .NET Framework 3.5 over ZedGraph.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With