Error while evaluating UIControl Callback

1 view (last 30 days)
function gcopt_Callback(hObject, eventdata, handles)
gen = str2num(get(handles.generator,'String'));
rate = str2num(get(handles.rating,'String'));
outage = str2num(get(handles.outage,'String'));
Data = cell(gen+1, 4);
Data(:,1) = num2cell((0:gen).');
for v = 1:gen+1
Data(v,2) = rate * Data(v,1);
end
f = figure('Position',[440 500 461 146]);
t = uitable(f);
t.ColumnName = {'User Input','Capacity Out','Capacity Available','Probability'};
t.Data = Data;
set(t,'ColumnWidth',{120});
t.Position(3) = t.Extent(3);
t.Position(4) = t.Extent(4);
I'm having this error when I'm trying to multiply the data in the for loop.

Accepted Answer

Jan
Jan on 17 Oct 2017
Edited: Jan on 17 Oct 2017
You cannot multiply cells, but only the contents:
for v = 1:gen+1
Data{v,2} = rate * Data{v,1}; % Curly braces
end
Or:
Data(:,2) = num2cell(rate * (0:gen).');
  2 Comments
Kim Lopez
Kim Lopez on 17 Oct 2017
Thank you so much. I'm new to MATLAB and really appreciate the help.
Jan
Jan on 17 Oct 2017
You are welcome. The handling of cell arrays is not easy at the beginning. Look in the documentation for the examples:
doc cell
docsearch cell

Sign in to comment.

More Answers (0)

Categories

Find more on Symbolic Math Toolbox in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!