Trying to increase the maximum width of OuterPosition (plot is cut off)

2 Ansichten (letzte 30 Tage)
I have the following code
f = figure();
f.Units = "inches";
f.OuterPosition = [0 0 7 2.5]
f =
Figure (1) with properties: Number: 1 Name: '' Color: [1 1 1] Position: [0 0.0202 7.0000 2.2727] Units: 'inches' Use GET to show all properties
ax1 = axes(f,'Units','inches','Position',[0.25 0.25 2 2], ...
'XGrid','on','YGrid','on');
ax2 = axes(f,'Units','inches','Position',[2.5 0.25 2 2], ...
'XGrid','on','YGrid','on');
ax3= axes(f,'Units','inches','Position',[4.75 0.25 2 2], ...
'XGrid','on','YGrid','on');
plot(ax1,[0 1 2 3],[0 1 2 3])
ylabel("$y$","Interpreter","latex")
xlabel("$x$","Interpreter","latex")
plot(ax2,[0 1 2 3],[0 -1 -2 -3])
ylabel("$y$","Interpreter","latex")
xlabel("$x$","Interpreter","latex")
plot(ax3,[0 1 2 3],[0 1 2 3].^2)
ylabel("$y$","Interpreter","latex")
xlabel("$x$","Interpreter","latex")
When it produces a the plots, they're all cut off. I want the images to be to scale for a paper, hence why the width is 7". It seems that MATLAB is enforcing some hard limit on the maximum width it will allow for plotting, is there any way around this?
  7 Kommentare
Voss
Voss am 13 Mär. 2024
@David Gillcrist: Did you try setting the figure's Position rather than OuterPosition (as I mentioned here), and did that fix the problem?
David Gillcrist
David Gillcrist am 13 Mär. 2024
It appears the issues was just that the OuterPosition of each axis was being plotted outside the OuterPosition of the figure. I didn't need to adjust the Position of the figure itself, only shrink the position values of each axis so their OuterPositions would be within the boundary

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu Graphics finden Sie in Help Center und File Exchange

Produkte


Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by