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!