Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
我用gui写了一个小的MATLAB程序。在gui内,除其他外,我有一个绘图,用户可以在其中选择两个点。为此,我使用函数ginput ,该函数创建一个用于选择的十字准线。不幸的是,十字准线扩展了整个窗口,并不仅限于绘图,该绘图看起来并不美观,并且会使用户感到困惑。十字准线如何仅限于图块区域?
回答: 尝试使用getpts,它不会创建十字准线。使用getpts,您还可以指定希望用户选择的轴,如 [x,y] = getpts(ax); getpts的唯一麻烦是没有办法将其限制为精确到两点。但是它确实具有一个不错的功能,即用户可以通过按DELETE撤消点选择,并按ENTER确认点。 仔细查看ginput文档,您描述的行为是有意的,显然是不可避免的 从 doc ginput 单击轴将使该轴成为当前轴。即使在调用ginput之前设置了当前轴,单击的任何轴都将成为当前轴,并且ginput返回相对于该轴的点。如果从多个轴中选择点,则返回的结果将相对于它们所来自的轴的坐标系。更多&回答... |
![]() |
![]() |