Problem scattering high amount of data

7 views (last 30 days)
I'm trying to scatter more than 80Mb of data in one scatter figure and I see nothing but blue. I'm trying to get smaller points than 1, something like 0.01 but size doesn't change. I tried to use '.' instead of default 'o' put it doesn't work either.
Thanks for your help.

Accepted Answer

John D'Errico
John D'Errico on 18 Aug 2015
Well, think about what you are trying to do!
Consider a region on your screen, say 1000x1000 pixels. This is a reasonably sized figure window,and depending on your monitor, perhaps a pretty large one.
80MB of data means you have many MILLIONS of points to plot. So depending on the density of points, this means virtually every pixel is filled in. Sorry, but your monitor will not be able to display at sub-pixel levels, since a pixel is a pixel.
It matters not what you WANT to do, but only what is possible to do. Look for a rational way to deal with the amount of data that you have, and the limits of you display. So, better is to look for different ways to display this information. It sounds like you are merely trying to create a scatter plot in 2-d. So why not instead create a histogram in 2-d? For example, create a grid in 2-d where each 2-d cell represents the number (or fractional amount) of points that fell into that cell. Now you can choose a reasonable size for those cells that will display properly on your monitor.
Personally, I like the idea of a pcolor plot here, using a reasonable colormap, so zero counts in a cell will show up as white, and the amount of color will be an indication of the density of points in that cell.
Felix Lauwaert
Felix Lauwaert on 18 Aug 2015
Well this looks right what I need. I think it will be a pain for me to program it (I'm on Matlab for about 3 months now) but I'll try it and if I get stuck I'll post another question.
Thank you very much for your answer, John.
John D'Errico
John D'Errico on 18 Aug 2015
You might try the gray, pink or bone colormaps.
shading interp
And a 2-d histogram is easy enough to build. The accumarray function will do much of the work for you. Or, you can use the histc function twice (now being replaced by histcounts.)

Sign in to comment.

More Answers (0)



Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!