Strange rendering of colorbar when plotting lines in many colors

2 views (last 30 days)
When plotting lines in many colors, the colorbar looks strange when the figure renderer is set to 'painters'.
The following code plots N lines with N colors according to colormap.
N=200;
colors=hsv(N);
t=2*pi*(0:N-1)/N;
c=cos(t);
s=sin(t);
figure(1);
clf
colormap(colors);
hold all;
set(gca,'ColorOrder',colors);
plot([zeros(1,length(t)); c],[zeros(1,length(t));s])
For me the colorbar looks normal if N<165. Greater values lead to strange rendering with a reduced color range and a sharp edge somewhere in the middle. Increasing N further leads to a black colorbar with no colors displayed at all.
However, when exporting the graph or changing the renderer to 'zbuffer' or 'opengl' the colorbar looks normal for all N.
How can I avoid this behavior except for manually changing the renderer for every figure?
  2 Comments
Walter Roberson
Walter Roberson on 8 Jun 2013
Which OS and which MATLAB version?
Have you considered setting the root DefaultFigureRenderer property so that you do not code it for every figure?
Tobias
Tobias on 10 Jun 2013
Thanks for the reply and sorry for the late answer.
My Matlab Version is 8.0.0.783 (R2012b), OS is Win7. Thanks for the tip with the default renderer, this would be a solution. How do z-buffer and opengl renderer behave when exporting figures? Do they support vector graphics (eps, pdf)?

Sign in to comment.

Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!