转动放大或关闭或按因素放大或放大
变焦上
缩小
缩小
变焦重置
变焦
变焦发送朴通
放大你
变焦(因素)
变焦(无花果、选项)
h = zoom(figup_handle)
变焦上
开启交互式缩放。当在图形中启用交互式缩放时,当光标在坐标轴内时,按下鼠标按钮可以向鼠标下方的点放大或向外放大。缩放改变轴的限制。当使用缩放模式时,你
通过将鼠标光标定位到您想要的图的中心位置或任意位置来放大
按下鼠标按钮或
旋转鼠标滚轮远离你(向上)。
通过将鼠标光标定位到您想要的图形中心位置或任意位置来缩小
同时按下转变和鼠标按钮,或
向你的方向(向下)旋转鼠标滚轮。
每次鼠标点击或滚动滚轮点击都会放大或缩小2倍。
当启用了放大功能时,单击并拖动一个轴将绘制一个橡皮带框。当您松开鼠标按钮时,坐标轴将放大到由橡皮筋框包围的区域。
在放大和缩小模式下,双击坐标轴将返回坐标轴的初始缩放设置。
缩小
转动交互式缩放。
缩小
将情节返回到最初的缩放设置。
变焦重置
记住当前缩放设置作为初始缩放设置。后来电话缩小
,或者双击当互动变焦
模式已启用,将返回此缩放级别。
变焦
在关闭和打开之间切换交互式缩放状态(恢复最近使用的缩放工具)。
变焦发送朴通
和放大你
集变焦上
为了x- - -y分别设在。
变焦(因素)
通过指定的缩放系数放大或缩小,而不影响交互缩放模式.大于1的值将被放大,而大于0且小于1的数字将被缩小1 /因素
.
变焦(无花果、选项)
可以在使用此语法的当前图形之外的图中指定任何前面的选项。
h = zoom(figup_handle)
返回一个放大模式对象的图图_Handle.
以自定义模式的行为。
您可以访问以下属性。
启用
“上”|“了”
—指定图形当前是否启用此图形模式。
FigureHandle <处理>
—关联的图形句柄,为只读属性,不能设置。
运动
'水平'|'垂直'|'两个'
—图的放大类型。此属性仅影响二维视图中的轴(90年[0]
).
方向
“在”|“了”
—缩放操作的方向。
RightClickaction.
“InverseZoom”|“PostContextMenu”
-右键操作的行为。
的值“InverseZoom”
导致右键单击缩小。的值'postcontextmenu'
显示上下文菜单。此设置仍然存在MATLAB®会话。
UIContextMenu <处理>
- 指定要在右键单击操作期间显示的自定义上下文菜单。
如果RightClickaction.
属性已设置为“InverseZoom”
.
您可以为缩放模式操作编写以下回调程序。
ButtonDownFilter < function_handle >
- 拦截功能屁股
事件
应用程序可以在程序员定义的情况下禁止缩放操作,具体取决于回调返回。输入函数句柄应该引用一个带有两个隐式参数的函数(类似于图形对象回调函数),如下所示:
函数(res) = myfunction (obj event_obj)对象的% obj句柄% event_obj struct用于事件数据(本版本为空)% res [output]逻辑标志决定是否缩放应发生%操作(对于'res'集%到'false'或'ButtonDownFcn'属性对象的%应该优先(当%'Res'是'真')
ActionPreCallback < function_handle >
—缩放前执行的命令
如果您想在缩放操作开始时执行代码,请设置此回调。输入函数句柄应该引用一个带有两个隐式参数的函数(类似于图形对象回调函数),如下所示:
函数myfunction (obj event_obj)点击的图形的% obj句柄% event_obj对象,包含事件数据的结构
事件数据有以下字段。
|
被缩放的轴的柄 |
ActionPostCallback < function_handle >
- 在缩放后执行的函数
如果您想在缩放操作结束时执行代码,请设置此回调。输入函数句柄应该引用一个带有两个隐式参数的函数(类似于图形对象回调函数),如下所示:
函数myfunction (obj event_obj)点击的图形的% obj句柄% event_obj对象,包含事件数据的结构的事件数据%的ActionPreCallback回调)
以下在缩放模式查询中的函数并设置其特定属性。
旗帜= isAllowAxesZoom (h, ax)
—查询缩放轴权限。
调用的函数isAllowAxesZoom
在缩放对象上,h
,带有轴柄向量,斧头
,作为输入返回与坐标轴句柄向量相同维度的逻辑数组,该数组指示是否允许对坐标轴对象进行缩放操作。
setAllowAxesZoom (h, ax,标志)
—设置缩放轴的权限。
调用的函数setAllowAxesZoom
在缩放对象上,h
,带有轴柄向量,斧头
,和逻辑标量,旗帜
,允许或不允许对轴对象进行缩放操作。
cn = getAxesZoomConstraint (h, ax)
-获取缩放操作约束的功能。
调用的函数getAxesZoomConstraint
在缩放对象上,h
,带有一个轴对象,斧头
,作为输入返回轴的约束。返回的约束是以下值之一:“x”
,“y”
,“z”
,'xy'
,'xz'
,'yz'
,或无约束的
.
setAxesZoomConstraint (h, ax, cnstr)
—设置缩放操作的限制。
调用的函数setaxeszoomConstraint.
在缩放对象上,h
,带有一个轴对象,斧头
,以及一个约束选项,cnstr
,设置轴的约束。将约束指定为以下值之一:“x”
,“y”
,“z”
,'xy'
,'xz'
,'yz'
,或无约束的
.
猪圈= getAxes3DPanAndZoomStyle (h, ax)
- 获取缩放操作样式的功能。
调用的函数getaxes3dpanandzoomstyle.
在缩放对象上,h
,带有轴柄向量,斧头
,作为输入返回每个轴的缩放样式。每个轴的返回值是“限制”
或'相机'
.
setAxes3DPanAndZoomStyle (h, ax,风格)
-设置缩放操作的样式。
调用的函数setAxes3DPanAndZoomStyle
在缩放对象上,h
,带有轴柄向量,斧头
,以及字符数组,风格
,设置每个轴的缩放样式。指定样式为其中之一“限制”
或'相机'
.
CNS = GetaxeszoOmotion(H,AX)
- 获取缩放操作的限制功能(不推荐,使用getAxesZoomConstraint
).
调用的函数getAxesZoomMotion
在缩放对象上,h
,带有坐标轴对象的矢量,斧头
,因为输入返回的字符单元格数组与斧头
,这表示每个轴的约束。每个轴的返回值是“水平”
,“垂直”
或“两个”
.
setaxeszoomotion(h,ax,约束)
- 设置缩放操作约束的功能(不建议,使用setaxeszoomConstraint.
).
调用的函数setAxesZoomMotion
在缩放对象上,h
,带有坐标轴对象的矢量,斧头
,以及字符数组,风格
,设置每个轴的约束。指定约束“水平”
,“垂直”
或“两个”
.
绘制图形并打开缩放模式:
情节(1:10);变焦在放大情节
创建缩放模式对象并约束x-axis zooming。
注意:从R2014b开始,您可以使用点表示法设置属性。如果您正在使用较早的版本,请使用 |
情节(1:10);h =放大;h.Motion =“水平”;H.ENABLE ='ON';%放大在水平方向上的绘图上。
创建四个轴作为子图,并通过为每个轴手柄设置不同的属性为每个轴设置不同的缩放样式:
ax₁=次要情节(2 2 1);情节(1:10);h =放大;ax2 =情节(2 2 2);情节(兰德(3));setAllowAxesZoom (h, ax2假);ax3 =次要情节(2、2、3);情节(峰);setAxesZoomMotion (h, ax3“水平”);大举裁员=次要情节(2、2、4);轮廓(峰);setAxesZoomMotion (h,大举裁员,“垂直”);放大图表。
为缩放模式对象创建一个Quitdondown回调以触发。将以下代码复制到新文件,执行它,并观察缩放行为。
注意:从R2014b开始,您可以使用点表示法设置属性。如果您正在使用较早的版本,请使用 |
函数演示%允许一行有自己的'ButtonDownFcn'回调。线=情节(兰德(10));线。ButtonDownFcn =“disp(“这执行”)”;线。标签=“DoNotIgnore”;h =放大;h.ButtonDownFilter = @mycallback;h.Enable =“上”;%鼠标在直线上点击%函数[标记]= mycallback (obj event_obj)%如果对象的标记是'DoNotIgnore',则返回true。objTag = obj.Tag;如果strcmpi (objTag“DoNotIgnore”) flag = true;其他的国旗= false;结束
为要触发的缩放模式对象创建按钮下降前后事件的回调。复制以下代码到一个新文件,执行它,并观察缩放行为。
注意:从R2014b开始,您可以使用点表示法设置属性。如果您正在使用较早的版本,请使用 |
函数演示%收听缩放事件情节(1:10);h =放大;h.ActionPreCallback = @myprecallback;h.ActionPostCallback = @mypostcallback;h.Enable =“上”;%函数myprecallback (obj, evd) disp (“即将发生变焦。”);%函数mypostcallback(obj,evd)newlim = evd.axes.xlim;msgbox(Sprintf(“新的X限制是[%.2f%.2f]。'newLim));
编写一个上下文菜单,允许用户通过右键单击切换到Pan模式。
注意:从R2014b开始,您可以使用点表示法设置属性。如果您正在使用较早的版本,请使用 |
figure plot(magic(10)) hCMZ = uicontextmenu;hZMenu = uimenu (“父”hCMZ,“标签”,“切换到锅”,...“回调”,“潘(gcbf,“上”));hZoom =变焦(gcf);hZoom。UIContextMenu = hCMZ;变焦(“上”)
变焦
当光标在坐标轴内时,每次按下鼠标按钮,将坐标轴限制改为2倍(进或出)。您也可以单击并拖动鼠标来定义缩放区域,或双击返回初始缩放级别。
您可以创建一次缩放模式对象,并使用它来自定义不同轴的行为,如示例3所示。您还可以在飞行中更改其回调函数。
注意:不要在交互模式中更改图形回调。当一个模式是活动的(当平移、缩放等),如果您试图更改图形的任何回调,并且操作不会成功,您将收到一个警告。这个规则的一个例外是数字 |
当你将不同的缩放行为分配给不同的子图
通过模式对象来连接坐标轴,然后使用linkaxes
函数时,使用鼠标操作的坐标轴的行为将转移到链接的坐标轴上,而与您先前为其他坐标轴设置的行为无关。
使用缩放工具在图形工具栏上放大或缩小绘图,或选择放大或缩小从图的工具菜单。有关详细信息,请参见放大图.