colorbar's color failed with colormap longer than 1024 in scatter

I try to make a scatter plot and I have found out a problem with ploting colorbar, when length of x, y vectors and colormap is greater than 1024. I don't get errors, just the colorbar becomes grey.
This is a code which I run:
rnd = randn(2000,1);
idx = randi([1 1280],2000,1);
idy = randi([1 1024],2000,1);
l=1024;
figure;
markerSize=50;
map=colormap(jet(length(rnd(1:l))));
scatter(idx(1:l),idy(1:l),markerSize,map,'fill');
colorbar;
I change the length of these vectors and matrix with a parameter called 'l'. Now it is 1024 and I get a correct colorbar:
when I will change l for 1025 I get a grey colorbar:
What is the problem and how to solve it? I test Matlab R2014b Trial on Windows 7 Home Premium 64-bit. I have not found limitations of trial version on the mathworks webpage.

 Respuesta aceptada

Mike Garrity
Mike Garrity el 2 de Dic. de 2014
That's usually caused by confusion about how large a texture map the graphics card can handle. Some opengl drivers will sometimes say that they can handle a texture that they really can't. Could you please send the output of "opengl info" to www.mathworks.com/support so that we can make sure we have the details on this one? Thanks.

2 comentarios

'opengl info' returns:
Version: '1.1.0'
Vendor: 'Microsoft Corporation'
Renderer: 'GDI Generic'
MaxTextureSize: 1024
Visual: 'Visual 0x1d, (RGB 24 bits (8 8 8), Z depth 16 ...'
Software: 'true'
SupportsGraphicsSmoothing: 0
SupportsDepthPeelTransparency: 0
SupportsAlignVertexCenters: 0
Extensions: {3x1 cell}
MaxFrameBufferSize: 0
and now probably I see this magic number (in MaxTextureSize). Is it possible to change it?
The best way learning MATLAB: look around in support area.
Learning new things all the time.
So, Anna, my 'OpenGL info' says:
Version: '2.1 NVIDIA-8.26.28 310.40.55b01'
Vendor: 'NVIDIA Corporation'
Renderer: 'NVIDIA GeForce GT 750M OpenGL Engine'
MaxTextureSize: 16384
Visual: 'Visual (Undefined), (RGBA 32 bits (8 8 8 8),...'
Software: 'false'
SupportsGraphicsSmoothing: 1
SupportsDepthPeelTransparency: 1
SupportsAlignVertexCenters: 1
Extensions: {138x1 cell}
MaxFrameBufferSize: 16384
and 1025 works for me. In fact it works up to 16384 and then 16385 becomes gray.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Graphics Performance en Centro de ayuda y File Exchange.

Preguntada:

el 2 de Dic. de 2014

Editada:

el 2 de Dic. de 2014

Community Treasure Hunt

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

Start Hunting!

Translated by