I am searching for a widget or control to plot a time-series of data. Basically plot(x,y) where x and y are Nx1 vectors. I am looking but haven't found much and any suggestions would be great! Thanks.
Graphs should always have at minimum a caption, axes and scales, symbols, and a data field. Plotting symbols need to be distinct, legible, and provide good contrast between the figure in the foreground and the background.
Use TeeChart, supplied with Delphi. Good for time series and also real time graphs.
I prefer TJvChart from the Jedi VCL library, but then I wrote the TJvChart, or most of it anyways. The reason I recommend it is that it's free, but it has some limitations, including a lack of proper zoom-in and zoom-out capability.
I don't like to use any component in my apps that does not include source code, and generally caution against closed source component use in any serious project, so plan to buy the TeeChart source code if you'll need to use the component. I'm not anti Tee-Chart though; If you choose to use it in a commercial project, go ahead it's great too. Just be aware that it's really 100% worth buying the source for anything you really want to use in a serious way.
Quick start: 1. Download and install JVCL. 2. Open included JvChart demos.
Stackoverflow style tutorial: 1. drop TJvChart on a form. 2. write this code:
JvChart1.Options.PenCount := 1;
JvChart1.Data.ValueCount := 3;
// set values for [penIndex=0, valueIndex=0..2 ]
JvChart1.Data.Value[0, 1] := 1;
JvChart1.Data.Value[0, 2] := 3;
JvChart1.Data.Value[0, 3] := 5;
JvChart1.PlotGraph;
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