MATLAB绘制交互式图形


1.ginput函数

函数功能:来自鼠标或光标的图形输入

语法
[x,y]=ginput(n)
[x,y]=ginput
[x,y,button]=ginput(...)
说明
ginput 提高当前坐标区中的交叉线以供您标识图窗中的点,从而使用鼠标定位光标。
图窗必须具有焦点,ginput 才能接收输入。如果它没有坐标区,将在第一次点击或按键时创建一个。
[x,y]=ginput(n) 使您能够从当前轴标识 n 个点并在 x 和 y 列向量中返回这些点的 x 和 y 坐标。
按 Return 键可在输入 n 个点之前终止输入。将 n 指定为正整数。
[x,y]=ginput 可收集无限多个点,直到您按 Return 键为止。
[x,y,button]=ginput(...) 返回 x 坐标、y 坐标以及按钮或键名称。button 是一个指示按了哪些鼠标
 按键的整数向量(1 表示左键,2 表示中键,3 表示右键),或指示按了键盘上的哪些键的 ASCII 数字
 向量。
点击某个坐标区会使该坐标区成为当前坐标区。即使您在调用 ginput 之前设置当前坐标区,
 您点击坐标区的任何地方也会变为当前坐标区并且 ginput 返回相对于该坐标区的点。
如果您从多个坐标区上选择了点,则会相对于各坐标区原本所处的坐标系返回相应的结果。

2.gtext指令

gtext(arg) %用鼠标把字符串或者字符串元胞数组放置到图中作为文字说明。
%用户用鼠标确定其放置的位置,右击,字符串将被放置在紧靠十字中心的“第一象限”位置上。
%如果arg是单个字符串,单机一次即可;如果是多行字符串,单击一次只能将一行放置在图中。

3.zoom指令

函数功能:会出来一个类似放大镜的光标

放缩指令格式,指令格式

说明

在可变焦的当前图形上,可直接单击图形进行放大,也可长按鼠标左键括住需要放大的区域,右击即可进行图片的缩小。


4.实例1

程序

clc;
clear all;
close all;
x=-8*pi:pi/100:8*pi;
y1=sin(x);
y2=4*sin(x/4);
plot(x,y1,'r-',x,y2,'k-');
legend('sin(x)','4sin(x/4)');
grid on;
[x,y]=ginput(8);
%在下方命令窗口输入[x,y],可看到刚刚取得n个点的坐标,这里是8个点

运行结果


5.实例2


clc;
clear all;
close all;
figure;
axis([0 10 0 10]);
hold on
x=[];
y=[];
n=0;
disp('单击鼠标左键点取需要的点');
disp('单击鼠标右键点取最后一个点');
but=1;
while but==1
    [xi,yi,but]=ginput(1);
    plot(xi,yi,'bo')
    n=n+1;
    disp('单击鼠标左键点取下一个点');
    x(n,1)=xi;
    y(n,1)=yi;
end
t=1:n;
ts=1:0.1:n;
xs=spline(t,x,ts);
ys=spline(t,y,ts);
plot(xs,ys,'r-');
hold off

运行结果


作 者 | 郭志龙
编 辑 | 郭志龙
校 对 | 郭志龙

展开阅读全文

页面更新:2024-02-28

标签:图形   向量   光标   字符串   坐标   单击   指令   按键   函数   指示

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top