MATLAB实现图形交互式缩放的方法的研究
MATLAB实现图形交互式缩放的方法的研究
摘要:研究了MATLAB中GUI界面下以鼠标拖放交互方式实现图形缩放问题,分析了不同条件和要求下用MATLAB实现图形缩放的方法和具体算法,阐述了在MATLAB中人机交互操作的具体实现方法。
关键词:人机交互;缩放;区域选择;图形用户接口
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)33-7619-03
在实验中经常需要对获取的数据进行图形化分析,由于数据的时间分辨率高,绘制出来的数据细节难以观察,就需要对图形局部进行放大。实现图形用户界面下的交互式缩放就显得尤为重要。
1 MATLAB产生的图形
在使用MATLAB进行计算时,可能产生各种图形。图形数据的生成方式可分为由函数产生和由采样数据产生。由函数产生的图形数据是通过数学公式计算获得的。矢量图形的缩放不会导致图形失真,可以无限缩放。由采样数据产生的图形由于采样间隔的限制,图形放大到一定程度就会出现锯齿现象。对这类图形的缩放需要根据放大倍数分别采用不同的处理方法。MATLAB中绘图函数plot可以绘制上述两种方式产生的图形数据。如x和y是同样长度的矢量, plot(x,y)命令将绘制y元素对应于x元素的xy曲线图。
2 MATLAB提供的缩放功能
MATLAB自身提供了缩放函数zoom。zoom可以根据指定的放大倍数对图形进行缩放。在MATLAB命令创建的图形窗口中还可以工具栏中的放大缩小工具对坐标轴中的进行缩放。对于矢量图形,这样操作不会有问题。但是遇到非矢量图形,i当放大倍数达到一定值时,图形会失真。要想保证图形放大不失真,就需要进行特殊处理。