Search code examples
matlabdata-visualizationlarge-data

fastest way to display huge 2D data in MATLAB


I have a huge ~9Gb .bin file. Reading data with fread(), getting 2D array A ~ 10^9 points.

Trying to display with imagesc() as simple as:

    figure(1)
    imagesc(x,y,A)

It takes ~ 800 seconds for me and I can't see anything on the figure. I am sure that I read the file right. Checked with smaller ones.

So I wonder is there a way to display such a huge data with less effort for my PC?


Solution

  • Perhaps use some kind of downsampling on A. To do it right you'd have to apply a low-pass filter followed by decimation, but the low-pass filter may take very long in your case. So, even if it's subject to possible aliasing, you can try to just take a sample out of n and plot that:

    n = 10; %// choose as suits you best
    imagesc(x(1:n:end), y(1:n:end), A(1:n:end,1:n:end))