I have a number of scripts which plots graph and want plot on GUI Axes by push buttons. How can I write on the callback to plot on axes referring to variables in workplace or link each script to each push button?
1 次查看(过去 30 天)
显示 更早的评论
Heres what I have tried hold( handles.plotaxes,'off') % to replace with different graph per each button axes(handles.Axes1) attempt 1 X = A(:,2) plot (X) attempt 2 script1
attempt 3 run script1
0 个评论
采纳的回答
Erik Keever
2018-10-24
Event-driven GUI programming is about as close as it gets to the perfect use case for classes and OOP. The class can hold the data you want to play with, the handles for the figures/button/axes, and callback methods which get access to the class data. A bare minimum skeleton might look like:
classdef GUIClass < handle
properties (SetAccess = public, GetAccess = public)
foo;
bar;
theFigure;
end
methods (Access = public)
function self = GUIClass()
self.foo = rand(32,1);
self.bar = sin(2*pi*(1:32)/32);
self.theFigure = figure();
end
function buttonOneCallback(self, src, data)
figure(self.theFigure);
plot(self.foo);
end
function buttonTwoCallback(self, src, data)
figure(self.theFigure);
plot(self.bar);
end
end
end
Then a setup script would instantiate GUIClass, create/load the GUI and buttons, assign callbacks to buttonFooCallback and friends, and return the handle to the GUIClass.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Specifying Target for Graphics Output 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!