We are investigating alterntive control libraries for a new project we are working on. One of the requirements is to display data in the form of a surface map, as per the ComponentOne Chart below.
We've used the C1 control in the past but are not entirely happy with it - so wondered if anyone can recommoned some alternatives.
Having some trouble finding any, so all help appreciated.
NB: This is a .NET 3.5 WinForms application
It might not be my business, since I have never used C#/.NET framework/etc, but that looks like a mesh plot of a matrix.
We got introduced to Octave in Uni and one of the packages allowed us to mesh-plot matrices. The package Octave uses for ploting is GNUPlot. I don't know if you what if you can hook that to .NET 3.5 so it might not help much, but it's work having a look.
octave mesh plot http://www.network-theory.co.uk/docs/octave3/mesh.png
How can this list be complete without at least mentioning ILNumerics?
Disclaimer: I am biased as working in the ILNumerics team. But our Visualization Engine brings the most flexible and fastest surface plots available today. This is what our customers saying. You can try yourself for free - even directly on our website.
Edit: a very simple setup of an surface plot in ILNumerics would be achieved as follows:
All scenes are composed out of simple objects in a scene graph. You can modify and control everything. This is specialized for scientific data. Try and modify this example online:
http://ilnumerics.net/ilcc.php?ilc=ia13490
You may have already come across this, but I thought I'd point out the CodeProject article Plot 3D surfaces. I'm not sure if it's feature set is sufficient for your requirements, but it's worth investigating if you haven't already. The obvious advantage is that it's free and open source (so that you might expand it for your particular needs).
Example screenshot:
Another possible alternative that looks reasonably complete is the F# for Visualization library. This is commercial, but by the look of it would do more that what you might need. Don't let the fact that it is designed for F# put you off - you should still to use it directly from C# (or perhaps with a minor amount of interop to make things cleaner). Certainly, the functional programming support offered by C# should make the job relatively easy.
Example screenshot:
http://www.ffconsultancy.com/products/fsharp_for_visualization/images/surface_big.jpg
I've suggested the first (CodeProject) option just in case that happens to suit your requirements, though it may well not. The F# one would almost surely be good enough. Note that F# being a functional language (and hence typically used for mathematical and scientific applications), it is likely to be an excellent option for any functionality related to graph plotting - you may even want to consider writing the portion of program that does plotting in the language, especially if it gets relatively complex.
Hope that helps.
Depends on how much you want to spend on it, there are a lot of options, we do a variety of work in 3D graphics and have explored it extensively in the past Below I have provided some links to help you get started
3D scientific graph from Gigasoft - http://www.gigasoft.com
Ginosurf from Gino Graphics - http://www.gino-graphics.com/products/surf.htm
Matlab builder for .Net - http://www.mathworks.com/products/netbuilder
Meshviz and OpenInventor from Mercury Systems - http://www.vsg3d.com/
There is always Directx and its ports to managed code
Hope this is useful
I have been very happy with Dundas Chart in the past -you could see if that suits your needs.