Problem using polyval/polyfit in App Designer R2022b
6 次查看(过去 30 天)
显示 更早的评论
Hello i want to display a set of Input Data and Plot it.
After that i want to use polyfit/polyval on that Data and plot it also.
Some how this does not work in my App using App Designer ( in normal Matlab skript it worked)
here is an example code of it:
I used some Editfield to get diffrent Inputs
properties (Access = private)
Property % Description
Data
Range
PolyNom
function1
end
% Callbacks that handle component events
methods (Access = private)
% Button pushed function: DisplayButton
function DisplayButtonPushed(app, event)
app.Data = [app.EditField.Value,app.EditField2.Value,app.EditField3.Value,app.EditField4.Value,app.EditField5.Value,app.EditField6.Value]
app.Range = 1:length(app.Data)
app.Range = app.Range';
plot(app.UIAxes, app.Data,'o')
hold(app.UIAxes);
end
% Button down function: UIAxes
function UIAxesButtonDown(app, event)
app.PolyNom = polyfit(app.Range,app.Data,2);
app.function1 = polyval(app.PolyNom, app.Range);
plot(app.UIAxes2, app.function1);
I watched some Videos and they basicly do the same and it works, is this maybe a Version problem?
Thank you!
0 个评论
采纳的回答
Daniele Sportillo
2023-8-22
Hi Florian,
are you using the Edit Filed (Numeric) Component, and not the Edit Field (Text), in your App?
Otherwise in app.Data you would be concatenating characters ['123456'] and not numbers [1,2,3,4,5,6].
Daniele
9 个评论
Daniele Sportillo
2023-8-22
According to your code:
function UIAxesButtonDown(app, event)
app.PolyNom = polyfit(app.Range,app.Data,3);
app.function1 = polyval(app.PolyNom, app.Range);
plot(app.UIAxes, app.function1);
end
you are plotting the polyval when you click on the axes, not when you click on the second button (poly).
If you want to plot the polyval when you click on your button (poly) you have to add that code to the ***ButtonPushed callback for your button.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Software Development Tools 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!