How to plot two functions in one graph to demonstrate comparison
显示 更早的评论
this is the private functions and the separated plotting for each, and i want to plot both of them under one graph. i couldnt do it
methods (Access = private)
function AcVoltage(app,Vrms,F,T)
AC_Voltage = ((Vrms) * sin((2)*(pi*F)*(T))); % this function is for input voltage sine wave demonstration
plot(app.UIAxes,AC_Voltage)
app.UIAxes.Title.String = 'AC Input Voltage';
app.UIAxes.YLabel.String = 'Vrms';
end
function Output_Voltage(app,Vdc,F,T)
DC_Voltage = ((Vdc) * sin((2)*(pi*F)*(T))); %testing the code NOT the Actual[for testing]
idx = DC_Voltage>=0;
plot(app.UIAxes,DC_Voltage(idx))
app.UIAxes.Title.String = 'Rectified DC Voltage';
app.UIAxes.YLabel.String = 'Vdc';
end
3 个评论
Alan Stevens
2020-8-8
Have you tried
hold on
after the first plot?
ALI DRIDI
2020-8-8
dpb
2020-8-8
There's no "hold on" anywhere in the code -- both of those will plot the given data as new plot on the axes.
You need to create the axes, save the handle to it, set hold on to add plots to existing axis and then plot...With GUIS I don't know much ... to just plot you'd do something like
function plotStuff(app,Vrms,Vdc,F,T)
AcVoltage(app,Vrms,F,T)
hold(app.UIAxes,'on')
Output_Voltage(app,Vdc,F,T)
end
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Graphics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
