Image quality degrades when using incrementally bigger mesh
Afficher commentaires plus anciens
I am trying to make an image containing multiple plots (I'm using subplot). One of the plots is a mesh(). Then I use print() to make an EPS file.
When I make the arrays inputted into mesh 90x337 everything looks fine. But when I make them 90x338, everything messes up...quality is degraded, e.g., tick labels are no longer arbitrarily smooth as I zoom in (as vector graphics should)...if I use Latex as the interpreter, suddenly some letters in axis labels become subscripts...everything looks grainy. The threshold is even worse for the Figure plot than for the exported image file.
I don't think this is a filetype issue (raster vs. vector) as the same problem seems to occur for TIFFs and PNGs. I have tried specifying use of Painters. I have tried deleting large arrays right before calling mesh() to try to free up memory but that doesn't solve it. I've tried "opengl neverselect."
When I don't plot the mesh but I continue to make my other lineplots etc. in the figure, all is well...the issue appears to be related to the amount of data being plotted by mesh().
I have tried all the basic things I believe and am a pretty experienced MATLAB user, but I am going nuts. I'm using Fedora Linux...I have a feeling this wouldn't happen in e.g. Windows.
BTW, I definitely need much higher mesh resolution than 90x337 because I am plotting spectra with particular linewidths and spacings. And even if I didn't care about that I need higher resolution simply to increase the image quality (this is for a publication, hopefully).
Any help would be incredibly appreciated. Thanks in advance!
--Andrew
Réponse acceptée
Plus de réponses (1)
Image Analyst
le 8 Avr 2013
1 vote
Try asking Malcom Lidierth about Project Waterloo: http://www.mathworks.com/matlabcentral/answers/56890-publication-quality-graphics-in-matlab
3 commentaires
Andrew
le 11 Avr 2013
Malcolm Lidierth
le 11 Avr 2013
@Andrew
It sounds to me that this is a problem with the software you are using to process/view the MATLAB eps output. Try viewing the eps file from MATAB in a decent previewer/print it at different sizes). Examine the file content. Is it vector output?MATLAB might switch to embedding an image with multiple axes I guess but I am not aware of any docs on that.
As IA says, it looks like aliasing (with height 337 vs 338 making a difference -odd vs even- that suggests some pretty basic resampling algorithms are being applied). Is your post-MATLAB processing converting EPS to bitmap?
ML
Andrew
le 7 Mai 2013
Catégories
En savoir plus sur Image Arithmetic dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!