Axis tick labels changed upon export to EPS

Hi all,
Duplicate post from the discussion forum here:
because I think it's a reasonable question!
I am using Matlab R2010b.
I have manually changed the axis tick labels for some of my plots and am experiencing some weird behaviour.
I have saved the figures (.fig) and the axis tick marks are correct. I can export to PNG or PDF with no problems. When I export to EPS however the axis tick marks have been altered and are completely incorrect.
Fig file is here if you want to play with it:
Any ideas? Surely a bug if it is specific to EPS export?!
Thanks for any suggestions,
Gabriel

1 Kommentar

Arnaud Miege
Arnaud Miege am 26 Apr. 2011
The figure exports fine to EPS on my machine. Do you have Ghostscript and Ghostview installed?

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Gabriel Rosser
Gabriel Rosser am 27 Apr. 2011

4 Stimmen

Fixed:
The problem with specifying your own axis tick labels is that the property (for the y-axis here) YTickLabelMode is set to manual but the property YTickMode remains at auto.
When exporting to EPS, for some very odd reason the figure must be slightly rescaled (which is not the case/the rescaling is different when choosing PDF or PNG). The tick positions are automatically reassigned, but the labels remain those specified manually. Result: unexpected and rubbish figures!
Setting the axis property YTickMode to manual fixes this.
Of course this is only a problem if the rescaling step causes the tick positions to change, so Oliver Woodford probably didn't observe this.
I still think this is buggy behaviour - why should one type of export cause figure resizing when another doesn't?
Thanks for your suggestions everybody!

10 Kommentare

thanks a lot... solved my problem! /john
Wenjie Ji
Wenjie Ji am 12 Aug. 2014
The same when exporting to JPG
Steven
Steven am 21 Okt. 2014
Bearbeitet: Steven am 21 Okt. 2014
For me also this problem arises when exporting to PDF!
But I have not been able to resolve it by changing tickmode to manual.
Any other solution?
Is this a bug?
Thanks!
Steven
Jan
Jan am 21 Okt. 2014
@Steven: Please open a new thread and post the relevant code there. I assume the mistake is concealed in "changing the tickmode to manual". How did you do this exactly?
Rotem Mairon
Rotem Mairon am 31 Jul. 2021
This bug is still relevant ten years later. Thank you so much, @Gabriel Rosser, for sharing such a simple and elegant solution!
Adriano
Adriano am 27 Apr. 2022
and 11 years later!
Palash Sarate
Palash Sarate am 13 Dez. 2023
and 12 year later
Ankush Kapoor
Ankush Kapoor am 11 Jan. 2024
And 13 years later!
Olivier
Olivier am 13 Nov. 2024
I think the problem is solved when you set ylim manually.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Matt Fig
Matt Fig am 26 Apr. 2011

0 Stimmen

I only use this for exporting figures.

5 Kommentare

Gabriel Rosser
Gabriel Rosser am 26 Apr. 2011
Nice function, thanks for pointing it out. Unfortunately it has exactly the same problem though - axis markings are messed up after exporting.
Matt Fig
Matt Fig am 26 Apr. 2011
I will notify the author, thanks.
Oliver Woodford
Oliver Woodford am 27 Apr. 2011
export_fig worked fine for me in R2010b on Windows 7 64-bit. The axis markings were as in the figure.
Gabriel Rosser
Gabriel Rosser am 27 Apr. 2011
Oh sorry Oliver I just realised you mean you tried export_fig with my actual figure? That's very strange. Only difference I can think is I'm running Linux 64bit. Anyway, thanks very much for trying it and see my answer below for the fix.
Oliver Woodford
Oliver Woodford am 27 Apr. 2011
Yes, I was using your figure. Anyway, glad you found a solution. If I can replicate the bug I may put a fix into export_fig.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by