[fpc-pascal] Fastest way of drawing 2D graphs

Hunter1972 Hunter1972 at mail.ru
Fri Sep 12 14:51:56 CEST 2014


> ...SDL...
> -Michael

> .....
> MSEgui txychartedit
> Another option is Lazarus TChart.
> .....
> Martin
I will check what these libraries can do and how fast.

> > I assume your polylines are basically an array of X,Y coordinates in single
> precision + color information? If you supply examples of those, I'll see if
> I can hack something together. (binary only, since it is a work codebase,
> more to get you an idea of how workable it would be)
Ok, I will describe the task in details (test code with sample data file is here: https://yadi.sk/d/ET9fp8AobSfXy).
Sample file is CSV(Excel) where the first line is data field names, the first column is time, the other are detection values.
Time (X coord) is float in seconds but actual time step is always 250 microseconds (0,00025 sec) precisely.
Detections (Y coord) are always integers.
There are 4-26 antennas, with 26 detectors each working on 4000 Hz, so one second at maximum can give 26*26*4000=~2,7 millions points.
The detections can be of 1 minute length, 2,7 * 60(secs) = around 150 millions points.
Each line represents detections from one detector.
I need to show them schematically but with enough precision that you are able to see where the detections amplitude is above average.
Then you should have the possibility:
1)To select the interesting time interval and program should show the data of this interval. If the scaling was not enough
you can narrow the interval again and again. Scaling can go up to show distinct points (e.g. 10 ms interval).
2)To select the second time interval (independent from the first one) with the same scale of the previous one and visually compare
data on both intervals.

Actually there are several waves launched in different times, with different initial amplitudes, so you should be able to estimate
approximately how they dissipate, change their fronts and phases. The task can be widened later, for example, to show
two files simultaneously (one is actual data points, the second - splined approximation) to understand how good the approximation was done.
Color can be applied to detection areas where the lines have the same phase.

I know it's not en easy task but at first my program should be able to:
1)Show the whole file data
2)Show the data of some interval
3)Move this interval to another part

Ravil





More information about the fpc-pascal mailing list