2014b axis label errors when printing to postscript
조회 수: 12(최근 30일)
표시 이전 댓글
Nick Powell 2014년 10월 22일
댓글: Victoria Walker 2018년 6월 22일
I am getting spaces in the axis label when I use a subscript. This behavior is new with 2014b, the same function for sure doesn't do this is 2013a. I was having troubles using greek letters as well, but found a work around. The issue with the Greek letters went away when setting the axis label font weight to normal, setting it to bold caused the issue (directly or indirectly, not sure). Any thoughts on why the print command is behaving differently? Currently using painters rederer, which is needed for impage quality and file size. I am also using MATLAB on Linux.
댓글 수: 4
Aaron Sigut 2014년 11월 19일
I have noticed the same thing (R2014b on ubuntu 12.04)--
plot(1:10,1:10,'bo');xlabel('\sigma \theta \rho','FontWeight','Bold')
will give correct output on the screen. However, print -depsc, print -dpdf, etc... will produce output with an x axis label of "< 3 ;" If you repeat this command, but leave out the Bold, it will print correctly. This was not an issue for R2014a. Also R2014b seems to have a bounding-box problem in its output as the plot is squeezed to the bottom of the page,sometime with portions cut off.
Doug Hull 2014년 11월 19일
편집: Doug Hull 2014년 11월 19일
This is under investigation by our developers.
We have found there is a gap, the size of which is dependent on the length of the first string, between strings in postscript and pdf output when painters is used. The problem does not occur when using opengl or printing to an image format or to a printer.
Invoke opengl when printing with -opengl flag.
댓글 수: 7
Victoria Walker 2018년 6월 22일
I can confirm that the issue still exists in R2018b. The bug report (https://www.mathworks.com/support/bugreports/1165657) was marked solved in R2017b w/ the unacceptable workaround of using the OpenGL renderer.
James Thunes 2015년 1월 6일
The problem appears to be due to the way that bold characters are handled. A quick example using R2014b:
plot(0:0.01:2*pi,sin(0:0.01:2*pi)); xlabel('\eta'); print('-dpdf','test')
The above code creates the correct pdf using the default export settings. When the font is changed to bold however, the "eta" is printed as "2"
Changing to a raster image format (eg png) does export the text correctly, but I agree with Aaron. Raster graphics are not good enough for publication.
Yair Altman 2015년 2월 25일
I've just committed a fix in export_fig for this Matlab bug - any Tex/LaTeX strings will now appear unbolded in the output, but at least they will be displayed correctly. So anyone who finds this bug annoying can either unbolden their labels, or use export_fig instead of print().
Find more on Labels and Annotations 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!