本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

修改实时脚本中的图窗

您可以在实时编辑器中以交互方式修改图窗。使用提供的工具探查数据并为图窗添加格式设置、注释或其他坐标区。然后,使用所生成的代码对您的代码进行更新以反映更改。

探查数据

当您将鼠标悬停在图窗上方时,您可以使用出现在图窗坐标区右上角的工具来平移、缩放和旋转脚本中的图窗。

  • - 添加数据提示以显示数据值。

  • - 旋转绘图(仅限三维绘图)。

  • - 平移绘图。

  • - 放大和缩小绘图。

  • - 撤消所有平移、缩放和旋转操作并还原绘图的原始视图。

要撤消或重做操作,请点击工具条右上角的

注意

  • 当您打开所保存的实时脚本时,每个输出图窗的旁边会显示 ,指示交互式工具尚无法使用。要使这些工具可用,请运行实时脚本。

  • 交互式工具无法用于不可见的坐标区。

假定您要了解 100 位不同患者的健康信息。请创建一个名为 patients.mlx 的实时脚本并添加代码,这些代码用于加载数据并添加一个散点图,以显示两组患者(女性和男性)的身高与体重对照情况。转至实时编辑器选项卡并点击 运行以运行该代码。

load patients

figure
Gender = categorical(Gender);
scatter(Height(Gender=='Female'),Weight(Gender=='Female'));
hold on
scatter(Height(Gender=='Male'),Weight(Gender=='Male'));
hold off

探查患者身高为 64 英寸的数据点。选择 按钮并点击身高为 64 的数据点之一。MATLAB® 将放大图窗。

更改图窗时更新代码

修改实时脚本中的输出图窗时,对图窗所做的更改不会自动添加到脚本中。在每次交互时 MATLAB 都会生成重现交互所需的代码,并将此代码显示在图窗的下方或右侧。使用更新代码按钮以将所生成的代码添加到脚本中。这样可确保在下次运行实时脚本时重现交互。

例如,在实时脚本 patients.mlx 中,在放大身高为 64 的患者后,点击更新代码按钮。MATLAB 会将所生成的代码添加在包含用于创建绘图的代码的行后面。

xlim([61.31 69.31])
ylim([116.7 183.3])
如果 MATLAB 无法确定在何处放置所生成的代码,更新代码按钮将被禁用。例如,如果您修改代码而不重新运行脚本,则会出现这种情况。在这种情况下,请使用复制按钮将所生成的代码复制到剪贴板。然后,您就可以将代码粘贴到脚本中的相应位置。

添加格式设置和注释

除了探查数据之外,您还可以通过添加标题、标签、图例、网格线、箭头和线条以交互方式设置图窗格式并进行注释。要添加项目,请首先选择所需图窗。然后,转至图窗选项卡,并在注释部分中选择可用选项之一。使用该部分右侧的向下箭头以显示所有可用注释。要将格式设置或注释选项添加到收藏夹中,请点击所需注释按钮右上方的五角星。要撤消或重做格式设置或注释操作,请点击工具条右上角的

注释选项包括:

  • 标题 - 向坐标区添加标题。要修改某个现有标题,请点击该标题并输入修改后的文本。

  • X 标签Y 标签 - 向坐标区添加标签。要修改某个现有标签,请点击该标签并输入修改后的文本。

  • 图例 - 向图窗添加图例。要修改现有图例说明,请点击该说明并输入修改后的文本。从注释部分选择删除图例可删除坐标区中的图例。

  • 颜色栏 - 向图窗添加颜色栏图例。从注释部分选择删除颜色栏可删除坐标区中的颜色栏图例。

  • 网格X 网格Y 网格 - 向图窗添加网格线。从注释部分选择删除网格可删除坐标区中的所有网格线。

  • 线条箭头文本箭头双箭头 - 向图窗添加线条或箭头注释。从尾部至头部绘制箭头。要移动现有注释,请点击该注释将其选中,然后拖动到所需位置。按 Delete 键可删除所选注释。

注意

不可见的坐标区不支持使用图窗选项卡来添加格式设置和注释。

例如,假定您要为 patients.mlx 中的图窗添加格式设置和注释。

  1. 添加标题 - 在注释部分中选择 标题。此时将出现一个蓝色矩形,提示您输入文本。键入文本 Weight vs. Height,然后按 Enter 键。

  2. 添加 X 标签和 Y 标签 - 在注释部分中选择 X 标签。此时将出现一个蓝色矩形,提示您输入文本。键入文本 Height,然后按 Enter。选择 Y 标签。此时将出现一个蓝色矩形,提示您输入文本。键入文本 Weight,然后按 Enter

  3. 添加图例 - 在注释部分中选择 图例。坐标区的右上角将出现一个图例。点击该图例中的 data1 说明,然后将文本替换为 Female。点击该图例中的 data2 说明,然后将文本替换为 Male。按 Enter

  4. 添加网格线 - 在注释部分中选择 网格。坐标区中将出现网格线。

  5. 添加箭头注释 - 在注释部分中选择 文本箭头。按从尾到头的顺序绘制箭头,将箭头指向散点图上体重最轻的患者。输入文本 Lightest Patient,然后按 Enter

  6. 更新代码 - 在选定的图窗中,点击更新代码按钮。实时脚本现在包含重现图窗更改所需的代码。

    grid on
    legend({'Female','Male'})
    title('Weight vs Height')
    xlabel('Height')
    ylabel('Weight')
    annotation('textarrow',[0.455 0.3979],[0.3393 0.13],'String','Lightest Patient');
    

添加和修改多个子图

您可以通过在图窗中创建子图来合并多个绘图。要在图窗中添加多个子图,请使用子图按钮将图窗划分为子图网格。首选,选择所需图窗。然后,转至图窗选项卡并使用子图 按钮选择子图布局。只有当图窗包含一个子图时,您才能为图窗添加其他子图。如果图窗包含多个子图,子图按钮将被禁用。

例如,假定您要比较吸烟患者和不吸烟患者的血压。创建一个称为 patients_smoking.mlx 的实时脚本,并添加用于加载 100 位不同患者的健康信息的代码。

load patients

转至实时编辑器选项卡并点击 运行以运行该代码。

添加一个散点图,用于显示吸烟患者与不吸烟患者的收缩压对比情况。运行代码。

figure
scatter(Age(Smoker==1),Systolic(Smoker==1));
hold on
scatter(Age(Smoker==0),Systolic(Smoker==0));
hold off

图窗选项卡中选择子图 ,然后为两个水平图选择布局。

在新创建的图窗中,点击更新代码按钮。实时脚本现在包含重现两个子图所需的代码。

subplot(2,1,1,gca)
subplot(2,1,2)

添加一个散点图,用于显示吸烟患者与不吸烟患者的舒张压对比情况。运行代码。

scatter(Age(Smoker==1),Diastolic(Smoker==1));
hold on
scatter(Age(Smoker==0),Diastolic(Smoker==0));
hold off

添加格式设置:

  1. 向每个子图添加标题 - 在注释部分中选择 标题。每个子图中将出现一个蓝色矩形,提示您输入文本。在第一个子图中键入文本 Systolic Blood Pressure of Smokers vs Non-Smokers,在第二个子图中键入文本 Diastolic Blood Pressure of Smokers vs Non-Smokers,然后按 Enter 键。

  2. 向每个子图添加网格线 - 在注释部分中选择 网格。每个子图中都会出现一个添加网格按钮。点击每个子图中的添加网格按钮。两个子图中都会出现网格线。

  3. 更新代码 - 在选定的图窗中,点击更新代码按钮。实时脚本现在包含重现图窗更改所需的代码。

    subplot(2,1,1)
    grid on
    title('Systolic Blood Pressure of Smokers vs Non-Smokers')
    subplot(2,1,2)
    grid on
    title('Diastolic Blood Pressure of Smokers vs Non-Smokers')

保存和打印图窗

在图窗修改期间,您可以随时选择保存或打印图窗以供将来使用。

  1. 点击输出右上角的 按钮。这将在单独的图窗窗口中打开图窗。

    1. 保存图窗 - 选择文件 > 另存为。有关保存图窗的详细信息,请参阅将绘图保存为图像或向量图形文件保存图窗以供以后在 MATLAB 中重新打开

    2. 打印图窗 - 选择文件 > 打印。有关打印图窗的详细信息,请参阅从“文件”菜单打印图窗

注意

实时脚本中将不会反映在该单独的图窗窗口中对图窗所做的任何更改。同样,该打开的图窗窗口中也不会反映在实时脚本中对图窗所做的任何更改。

相关主题