When arranging figures using gcf, Java Heap Space Error

1 Ansicht (letzte 30 Tage)
Christopher
Christopher am 23 Mai 2014
Kommentiert: Christopher am 27 Mai 2014
I am trying to nicely arrange some figures on my screen in an array. I used the following, relatively poor code to try to assign each figure to a spot on the screen, but whenever I run it I get a Java Heap Space Overload error that stalls MatLab and forces me to quit:
screen = get(0, 'screensize');
%declare how many graphs wanted on screen
graphsWide = 4;
graphsTall = 3;
graphPos = screen * diag([0 (screen(4)*(graphsTall-1))/graphsTall...
screen(3)/graphsWide screen(4)/graphsTall]);
shiftRight = [graphPos(3), 0, 0, 0];
shiftDown = [0, graphPos(4), 0, 0];
graphIndex = @(i, j) (graphPos+((i-1)*shiftRight)+((j-1)*shiftDown));
for i = 1:12
figure(i);
set(gcf, 'position', graphIndex(i mod 4, floor(i/4));
end
Any ideas as to where I am going horribly wrong?

Akzeptierte Antwort

Amy Haskins
Amy Haskins am 23 Mai 2014
I'm not sure exactly where you went wrong, but a much easier solution to laying out figure windows in a nice grid is to dock them and then use the tile option in the Window menu. You can un-dock the figures panel from the editor but still have all the figures docked in the panel.
f = figure('WindowStyle','docked') % Create a new docked figure
set(gcf,'WindowStyle','docked') % Dock an existing figure
  1 Kommentar
Christopher
Christopher am 27 Mai 2014
Just what I wanted and it's built in. Thanks so much for showing me that. As for the code… I wish I knew what was wrong but I'll live with a workable solution.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Jan
Jan am 23 Mai 2014
Is the problem reproducible? Did you restart Matlab and the computer already? Did you install a new Java version and work e.g. on a Mac? When did this problem start to happen? Did Matlab work correctly before? Did you try to re-install Matlab?

Kategorien

Mehr zu Software Development Tools finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by