Page 1 of 1

Performance Issue

Posted: Thu Jul 10, 2025 1:23 pm
by 16594956
Hello,

We have some performance problems drawing large TColorGridSeries of sparse matrices, see attached plot. Basically, there is only the small diagonal patch in the middle where there is data to plot:
IsoLinesPlotScreenshot 2025-07-10 150510.png
IsoLinesPlotScreenshot 2025-07-10 150510.png (359.69 KiB) Viewed 450 times
The area of the Red Triangles is empty and doesn’t contain any data. Is there a way to speed up handling and drawing by telling the plot that there are parts of the data that don’t need to be plotted?

Thanks and best regards,
Thomas

Re: Performance Issue

Posted: Fri Jul 11, 2025 10:24 am
by yeray
Hello Thomas,

Do you have a simple example we can run as-is to reproduce the situation here?
Thanks in advance.

Re: Performance Issue

Posted: Fri Jul 11, 2025 3:03 pm
by 16594956
Hello Yeray,

By Binning the Matrix down to about screen resolution I was able to improve the performance.
In addition I used Series.SetNull(Index) to hide areas.
Like this:

if FIsoLines3D then
begin
var IndexSurface := ScanSurfaceSeries.AddXYZ(aX, ScanSurfaceSeries.DefaultNullValue, aZ);
ScanSurfaceSeries.SetNull(IndexSurface);
end else
begin
var IndexColorGrid := ScanColorGridSeries.AddXYZ(aX, ScanColorGridSeries.DefaultNullValue, aZ);
ScanColorGridSeries.SetNull(IndexColorGrid);
end;

This works nicely for TColorGridSeries but it obviously doesn't work for SurfaceSeries!?
Please see Screen Shots.
ColorGridPlotSetNullWorking.png
ColorGridPlotSetNullWorking.png (220.87 KiB) Viewed 31 times
SurfacePlotSetNullNotWorking3.png
SurfacePlotSetNullNotWorking3.png (375.4 KiB) Viewed 31 times
Thanks and best regards,

Thomas