Painters renderer creates unwanted white lines

I want to render a surface using the painters renderer to make use of the vector graphic nature. In particular so the fonts and edges/lines will be sharp.
When rendering a surface with the painters renderer, I find that there are white lines that bisect each patch of the surface.
A minimal example.
Z = peaks(5);
s = surf(Z);
view(3)
set(gcf, 'renderer','painters')
print('-depsc2', 'peaks_with_white_lines')
Other discussions of this issue suggest using a different renderer. This seems unacceptable because of the font rendering alone.
Oliver says that it is really an issue with the image viewer, not the image. https://sites.google.com/site/oliverwoodford/software/export_fig I have not been able to find a viewer that does not display these white lines.
Any suggestions for either viewing the images without these artifacts or not creating them in the first place?
John

2 Comments

9 years after and the problem of white lines is still there...
@Alejandro, how are you exporting the image?
Have you tried any of the more recent tools such as exportgraphics?

Sign in to comment.

Answers (2)

What I ended up doing was exporting the figure twice: once with openGL and then again with painters and then overlating the surface from openGL onto the editable axes from painters in Illustrator (or vice versa). That being said, I removed all the axes and other labels from the openGL version as those couldn't be editted and I also used "cla" on the painters version to remove the surface I wanted (I had to make sure the axes and labels remained correct) as it was a nuisance to remove in Illustrator as each of the white lines on teh sruface denoted a different surface that had to be selected and deleted...
Hopefully someone may find this useful or be able to suggest a better alterantive.

4 Comments

Curious, what release of matlab are you using?
For MATLAB R2020a and later, I urge you to check out exportgraphics.
@Adam Danz exportgraphics works great! But the next line of code also produces white lines, when I try to insert .eps files into LaTeX by \includegraphics.
exportgraphics(gcf,'test.eps','BackgroundColor','none','ContentType','vector')

Sign in to comment.

Asked:

on 31 Dec 2012

Commented:

on 19 Dec 2023

Community Treasure Hunt

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

Start Hunting!