我正在使用matlab指南。我想取一个我在编辑文本框中输入的字符串,并将其转换为数字向量,以便我可以从向量中绘制图形。这是我为将String转换为数字向量而编写的代码:
function value = substrings (a)
j = 1;
word = a;
for i = 1:length(word)
if word(i)~= ' '
q(1,j) = str2double(word(1,i));
j = j+1;
end
end
value = q;
end
此代码消除了空格,所以如果我输入'1 2 3 4 5' 它将成为[1 2 3 4 5] 我遇到的问题是我不知道如何在我的主代码中包含这个,这样我就可以在编辑文本框中输入字符串并将其发送到一个按钮来绘制它。
这是指南中的部分:
function text_Callback(hObject, eventdata, handles)
% hObject handle to text (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
word = get(hObject,'String');
for i = 1:length(word)
if word(i)~= ' '
q(1,k) = str2double(word(1,i));
k = k+1;
end
end
handles.To_Plot = q;
我将使用按钮绘制handle.To_Plot。
答案 0 :(得分:0)
嗯,我不太确定你在问什么,但我相信如果你提供澄清,我可以帮助你。这就是我想你想要的:
没有必要发送它"任何事情。您只需使用guidata(hObject, handles)
来同步您的handle变量,然后将您的plot命令放在按钮回调中。
function button_ClickedCallback(hObject, eventdata, handles)
% hObject handle to text (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
doSomethingWith(handles.To_Plot);
end
如果这不是你需要的,只需在你的问题上发表一些澄清,我就会尽力提供帮助。告诉我您期望的具体输出,以及您看到的不同之处。