
data(i)h=plot(x,y);
原因是分配句柄的时候没有figure。连续的使用plot会导致后一次的画图覆盖前一次的结果,因此for循环结束后只有最后一个h是有效的。
应该:
data(i)h=fugure; plot(x,y);
callback不是默认就有两个参数吗,我记得其中一个就是你要的那个东西。就算不是,callback也可以自己加参数的,你把你要的句柄作为参数加进去就行了。
试了一下就是第一个参数啊
function Untitled3f=figure(1);
s1=uicontrol(f,'style','pushbutton','String','123','position',[100 50 60 50],'callback',@setnum);
end
function setnum(a,~)
set(a,'string','345');
end
原因是这样的,matalb默认显示double浮点数字,只显示4位小数,你看到的那个4900011其实后面还有小数位的,只是没有显示出来,所以你get 4900011,它会认为这个句柄是不存在的,想把句柄的全部小数位都显示出来可以这样,比如:
>> allchild(gcf)
ans =
1730284
1440284
1320284
1310284
800284
640284
570284
370284
180284
00284
>> vpa( a( 1 ), 20 )
ans =
1730284423828125
然后再get 1730284423828125这个完整的浮点数,就可以获取到句柄信息。
最简单的用@符号获取函数句柄。
int(@sin)
或者用inline也可以,
fun=inline('sin(x)');
int(fun)
希望能解决您的问题。
matlab散点连线可按照以下方法 *** 作:
1、首先需要先画出点图,即把每一个数据点的位置画出来,所使用的指令为:scatter(x,y1,'k'),该指令主要用于绘制点图,后面''里面的k标示的是每一个点用黑色画出,里面也可以一起添加一些其他的参数:如下图所示:
2、下面是利用第一步生成的数据和第二步的指令画出的点图,如下图所示,绿色的是y1的数据,红色的是y2的数据。
3 、下面就把点串起来,就大功告成了,使用的指令是:plotyy(x,y1,x,y2,'plot');具体的图形如下图所示:
4、利用matlab生成这些数据,在很多的报告、论文、统计年鉴等中就可以经常看到了。
subplot(2,1,1); 是把整个figure分成两行一列,然后在其第一行这个区域画图的,所以会铺满
subplot('Position',[left bottom width height]) %先设定好区域
plot(u1); %再画图,就可以了
Matlab中gcf、gca、gco用于返回特定对象的句柄值。如“set(gcf,'position',winrect)”语句表示对gcf的position进行设置,设置参数为winrect。Matlab的gcf、gca、gco的具体含义如下:
1、gcf 返回当前Figure 对象(当前图窗)的句柄值;fig = gcf用于返回当前数字句柄。如果一个图形不存在,那么gcf创建一个图形并返回它的句柄。可以通过使用图形句柄来查询和修改图形属性。
2、gca 返回当前axes 对象(坐标区或图)的句柄值;ax = gca用于返回当前图形的当前轴或图表,通常是用鼠标创建或单击的最后一个轴或图表。图形函数(如标题)以当前轴或图表为目标。使用ax访问和修改轴或图表的属性。如果轴或图表不存在,那么gca创建笛卡尔轴。
3、gco 返回当前鼠标单击(当前对象)的句柄值;该对象可以是除root 对象外的任意图形对象,并且Matlab 会把当前图形对象的句柄值存放在Figure 的CurrentObject属性中。
扩展资料:
Matlab的gcf、gca、gco功能都涉及到了句柄图形的使用。
1、句柄图形的含义
句柄图形是对底层图形例程集合的总称,它实际上进行生成图形的工作。这些细节通常隐藏在Matlab图形M文件的内部,但如果想使用它们也是可得到的。
句柄图形允许定制图形的许多特性,但这些图形特性使用高级命令和Matlab基础函数是无法实现的。如果想用橘**来画一条线,但不是plot 命令中可用的任何一种颜色,句柄图形就可以提供一种方法。
2、句柄图形对象
在Matlab中,每一个对象都有一个数字来标识,叫做句柄。每次创建一个对象时,就为它建立一个唯一的句柄。计算机屏幕作为根对象建立一个新的图形窗口后,变量Hf_fig 中返回它的句柄值。图形窗口的句柄为整数,通常显示在图形窗口标题条中。其它对象句柄是Matlab满精度的浮点值。
Matlab可以用来获得图形、坐标轴和其它对象的句柄。例如,Hf_fig=gcf返回当前图形窗口的句柄值,而 Ha_ax=gca 返回当前图形窗口内当前坐标轴。
参考资料来源:Matlab官网中文帮助文档-gcf
参考资料来源:Matlab官网中文帮助文档-gca
参考资料来源:Matlab官网中文帮助文档-gca
参考资料来源:Matlab官网中文帮助文档-图形对象句柄
以上就是关于matlab结构数组里的句柄调用全部的内容,包括:matlab结构数组里的句柄调用、matlab如何在callback里获取当前控件的句柄、matlab gui句柄值问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)