When arranging figures using gcf, Java Heap Space Error
1 次查看(过去 30 天)
显示 更早的评论
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?
0 个评论
采纳的回答
Amy Haskins
2014-5-23
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 个)
Jan
2014-5-23
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?
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Environment and Settings 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!