hhhhhhhkh 2023-04-01 16:49 采纳率: 36.4%
浏览 75
已结题

MATLAB 中 getrect 函数无法显示全部点,如何解决?

如下面图所示,使用 getrect 只有一个点显示在图框中,其他点都在坐标轴以外,请问这种如何解决。我的 matlab 版本是 2022b。

img


这张图是应该全部显示的点,上面的图是getrect后显示的点,坐标轴范围都不一样。

img

  • 写回答

5条回答 默认 最新

  • 「已注销」 2023-04-01 17:04
    关注

    我引用ChatGPT作答:
    可能出现这种情况的原因是,您的坐标轴范围(axis limits)可能不正确,导致 getrect 函数无法正确显示矩形框。

    为了解决这个问题,您可以使用以下步骤:

    1 手动设置坐标轴范围(axis limits),确保范围包含所有要显示的点。

    2 在使用 getrect 函数之前,调用 "axis manual" 命令,以确保 MATLAB 不会自动缩放坐标轴。

    3 使用 getrect 函数,以选择要显示的矩形框。

    4 如果 getrect 后显示的点的坐标轴范围与您预期的不同,您可以手动调整坐标轴范围,以确保所有点都在坐标轴范围内。

    例如,以下代码片段演示了如何使用 getrect 函数,并手动设置坐标轴范围:

    % Create some data
    x = linspace(0, 10, 100);
    y = sin(x);
    
    % Plot the data
    plot(x, y);
    
    % Manually set the axis limits
    axis([0 10 -1 1]);
    
    % Turn off automatic axis scaling
    axis manual;
    
    % Use getrect to select a rectangle
    rect = getrect;
    
    % Adjust axis limits if necessary
    
    
    

    在这个例子中,我们首先手动设置了坐标轴范围,然后使用 getrect 函数选择一个矩形框。最后,我们可以手动调整坐标轴范围,以确保所有点都在坐标轴范围内。

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 4月9日
  • 修改了问题 4月1日
  • 创建了问题 4月1日