matlab subplot用不了,matlab gui subplot图像显示的问题

在MATLAB GUI中遇到使用subplot出错的问题,改为直接操作axes对象进行绘图。尝试在已有图像的axes中再画图时出现错误。代码试图根据条件在两个不同的axes上绘制不同内容,但出现了'Invalid object handle'错误。疑问在于是否需要先清除axes中的图像,如果是,应该如何正确清除并重新绘制。
摘要由CSDN通过智能技术生成

根据大家的建议我不使用subplot ,把程序改了一下,我的思路如下:我的GUI界面上有两个AXES,现在我想把这些图再画到前面已经用过的axes中,后来还是出错了

我的程序如下:

h1=get(0,'CurrentFigure');

axes(findobj('tag','axes1'));

if (min(min_x)>10 & max(max_x)<576-10)

plot([min(min_x)-10:max(max_x)+10],d(min(min_x)-10:max(max_x)+10))

hold on

plot([min(min_x)-10 max(max_x)+10],[max(d)/10 max(d)/10],'r')

hold on

plot([min(min_x)-10 max(max_x)+10],[min(d)/10 min(d)/10],'r')

hold off

grid

else

min(min_x)

max(max_x)

end

h_max=max(x_zd);

x=find(x_zd>=(h_maxd-2))

size_x=size(x);

if size_x(2)>1

y=max_x(x);

p = polyfit(x,y,1);

cd1=atan(p(1));

cd_angle=cd1/pi*180;

h_maxd_cd=max(x_zd)*c

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Matlab GUI中使用subplot函数可以在一个panel内绘制多个图形。首先,需要将一个axes对象放入panel中,然后使用subplot函数指定要绘制的图形的位置。在给定的代码中,首先使用delete函数清空panel上的所有axes对象。然后,在panel内创建一个新的axes对象,并将其存储在handles.fig1中。接下来,使用for循环遍历sos2矩阵的每一行,将sos2转换为传递函数系数b和a。然后,使用freqz函数计算频率响应,并使用subplot函数在指定位置绘制图形。最后,使用set函数设置图形的字体大小和字体名称。\[1\] 在GUI中使用subplot函数时,需要注意将axes对象放入panel中,否则绘制的曲线可能会超出axes的范围。如果在panel内定义了一个名为axes1的axes对象,并使用subplot(311)绘图,那么绘图将在当前的axes1内进行。然而,之后会自动删除之前定义的当前axes1,导致无法再调用此axes1。解决这个问题的方法是使用句柄来记住axes对象,例如H(1) = subplot(311)。\[2\] 如果你有关于matlab GUI subplot的具体问题,请提供更多细节,我将尽力帮助你解决。\[3\] #### 引用[.reference_title] - *1* *2* [matlab gui中如何用subplot画多图](https://blog.csdn.net/trentczp/article/details/123882449)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [matlab gui subplot图像显示问题](https://blog.csdn.net/weixin_34581259/article/details/115909301)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值