0

我在将 if-loop 与 plot_handles 集成时遇到了一些问题。所以我正在写的程序有这样的结构:

它有这个菜单文件,您可以在其中选择要执行的操作(这只是其中的一小部分):

case 1

plot_handles = createPlot(plot_handles);

case 2

changeWidth(plot_handles);       

在情况 1 中,您将能够索引一个图形并编写绘制的函数,然后您将返回到菜单。

function plot_handles = createPlot(plot_handles)
clc

try 
figureid = input('Input figure-ID: ');
func= input('Input function f(x): ','s');

figure(figureid);
h=ezplot(func); 
plot_handles(figureid)=h;

catch
lasterr
error('Nonvalid function!');

end
end

回到菜单中,我输入案例 2,其中的想法是它会询问您要编辑哪个图形。一旦您选择了应该能够编辑图形线宽:

function changeWidth(plot_handles)

figureid = input('Input figure-ID: ');
h = plot_handles(figureid);

if exist(figureid)== 0 % Here's the problem, I don't know how to test if ...
% the ID is correct or not.
    error('Invalid figure-ID')


else
width=input('Input new width: ');
set(h, 'linewidth', width) 


end

问题是我不知道如何检查 IF 循环中的数字 ID 是否正确,在其他地方我希望将错误消息写出来。

真的很感激一些帮助!

4

1 回答 1

0

您在寻找ishghandle功能吗?

于 2013-05-20T20:12:37.880 回答