通常当我在MATLAB中绘图时,它总是在同一个图形上绘制。我如何让它绘制一个新的图形?
我知道它非常初级,但我没有使用 Google 搜索找到它。
figure;
plot(something);
或者
figure(2);
plot(something);
...
figure(3);
plot(something else);
...
等等
虽然执行“图(1),图(2),...”在大多数情况下会解决问题,但不会在所有情况下都解决。假设您的桌面上有一堆 MATLAB 图形,并且在运行代码之前,您打开的图形数量会不时变化。使用提供的答案,您将覆盖这些您可能不想要的数字。简单的解决方法是在绘图之前使用命令“figure”。
示例:您的桌面上有五个图形,来自您运行并使用的先前脚本
figure(1);
plot(...)
figure(2);
plot(...)
您刚刚在桌面上绘制了数字。然而代码
figure;
plot(...)
figure;
plot(...)
刚刚使用您想要的地块创建了图 6 和图 7,并单独留下了之前的地块 1-5。
另一件需要注意的事情是,clf
当你开始一个新的情节时,使用 (clear figure) 命令。否则,您可能会在一个预先存在的图形上绘图(单独使用命令不可能figure
,但如果您这样做figure(2)
,可能已经有一个图形#2),具有多个轴,或者放置的轴有点有趣。用于clf
确保您从头开始:
figure(N);
clf;
plot(something);
...
正如已经说过的:figure
将为您的下一个情节创建一个新人物。调用figure
时您也可以配置它。例子:
figHandle = figure('Name', 'Name of Figure', 'OuterPosition',[1, 1, scrsz(3), scrsz(4)]);
该示例设置窗口的名称及其相对于所用屏幕的外部大小。这figHandle
是生成图形的句柄,以后可以用来更改外观和内容。例子:
点符号:
figHandle.PaperOrientation = 'portrait';
figHandle.PaperUnits = 'centimeters';
老款式:
set(figHandle, 'PaperOrientation', 'portrait', 'PaperUnits', 'centimeters');
使用带有点符号或的句柄,set
此处配置打印选项。
通过保留具有不同名称的图形的句柄,您可以与多个活动图形进行交互。要将现有图窗设置为您的活动图,请调用figure(figHandle)
。新的地块现在将去那里。
另一个常见的选项是当您确实希望在一个窗口中显示多个图时
f = figure;
hold on
plot(x1,y1)
plot(x2,y2)
...
在同一个(新)图形上绘制多个数据集。
就这么简单——
figure, plot(yourfigure);