Very weird bug(?) on latex interpreter

1 view (last 30 days)
Theo
Theo on 10 Nov 2011
I include a code snippet which colors underneath a sine curve. There is a ylabel with the latex interpreter turned on. Changing the number of patches (from N = 100 to N = 1000) seems to affect the resolution of the axis label. Does anybody know what's going on? Please see the images below for the good label and the messed up one:
The code is
figure(1);
clf(1);
N = 100;
x = linspace(0, 2*pi, N);
f = sin(x);
g = 0*f;
verts = [x(:), f(:); x(:) g(:)];
q = (1:N-1)';
faces = [q, q+1, q+N+1, q+N];
p = patch('Faces', faces, 'Vertices', verts, ...
'FaceVertexCData', [f(:); f(:)], ...
'FaceColor', 'interp', 'EdgeColor', 'none');
ylabel(['$N = ' num2str(N) '$'], 'FontSize', 18, 'interpreter', 'latex');

Accepted Answer

Jan
Jan on 10 Nov 2011
This is a problem with your OpenGL-driver. For large data sets the renderer is automatically set to OpenGL, but with Painters the graphics are ok. If you set the renderer manually, it is not changed automatically:
figure('Renderer', 'Painters');
...
The problems for OpenGL might be solved by updating the driver of the graphics card, or by using a software renderer:
opengl software
For more details see help opengl.
  3 Comments
Titus Edelhofer
Titus Edelhofer on 10 Nov 2011
Try to add parameter "-painters" while printing.
Theo
Theo on 10 Nov 2011
Yes, Titus, this does the trick. It is a somewhat unsatisfactory workaround (as painters graphics might not suffice), but I'll accept it. Thanks all.

Sign in to comment.

More Answers (0)

Categories

Find more on Graphics Performance in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!