Plot axis limits different between figure and print

2 visualizzazioni (ultimi 30 giorni)
I'm really not sure how to phrase this question to be clear, and am surprise that I never noticed this before. Perhaps because I rarely print figures.
I create a plot using the plot command. Something like this:
h = figure;
plot(x, y);
h.Position = [100 100 800 480];
set(h, 'PaperPositionMode', 'auto');
grid on; hold off; ax1 = gca;
I draw rectangles and create text boxes, based on XTick and YTick values. I also make use of xlim & ylim values to set positions of other text boxes. But nowhere am I setting xlim or ylim manually. Finally, I print the plot figure using print, as follows:
print(gcf, ['somefilename' '.png'], '-dpng');
The figure window created above matches the printed png file. However, both these seem to set the ylim scale poorly. When I grab the figure window and resize it (make larger), the ylim scale changes and seems to get set well. I don't know why this is. It's problematic because this setting doesn't get into the png file. How do I fix this, so that the printed png file has the better y-axis scale set?

Risposta accettata

Voss
Voss il 25 Ago 2022
What happens if you resize the figure before calling print()?
  1 Commento
AR
AR il 25 Ago 2022
Thanks - given how it works, this makes sense. I tried it using the position property to reset figure size larger, and now it seems to print with the correct axis scales. I may have a follow-on question later, but I think I should be able to work it out with this.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Labels and Annotations in Help Center e File Exchange

Prodotti


Release

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by