Mercurial > hg > ishara
annotate arrows/@vplotter/construct.m @ 0:672052bd81f8
Initial partial import.
author | samer |
---|---|
date | Wed, 19 Dec 2012 22:38:28 +0000 |
parents | |
children |
rev | line source |
---|---|
samer@0 | 1 function u=construct(s,sizes_in) |
samer@0 | 2 figure(fig(s)); set(gcf,'Name',name(s)); |
samer@0 | 3 h=s.opts.plotfn(zeros(1,1),s.opts.args{:}); |
samer@0 | 4 if ~isempty(s.opts.ylim), ylim(s.opts.ylim); end |
samer@0 | 5 if ~isempty(s.opts.xlim), xlim(s.opts.xlim); end |
samer@0 | 6 if isfield(s.opts,'ylabel'), ylabel(s.opts.ylabel); end |
samer@0 | 7 if isfield(s.opts,'xlabel'), xlabel(s.opts.xlabel); end |
samer@0 | 8 |
samer@0 | 9 u=mkunit(s); |
samer@0 | 10 if length(h)==1 |
samer@0 | 11 if autoflush(s), u.process =@proc_flush; |
samer@0 | 12 else u.process=@proc_noflush; end |
samer@0 | 13 else |
samer@0 | 14 af=autoflush(s); |
samer@0 | 15 u.process =@proc_mat; |
samer@0 | 16 end |
samer@0 | 17 |
samer@0 | 18 u.sizes_out = {}; |
samer@0 | 19 u.dispose = @()delete(h); |
samer@0 | 20 |
samer@0 | 21 function proc_flush(x), set(h,'XData',1:length(x),'YData',x); drawnow; end |
samer@0 | 22 function proc_noflush(x), set(h,'XData',1:length(x),'YData',x); end |
samer@0 | 23 function proc_mat(x), |
samer@0 | 24 dom=1:size(x,1); |
samer@0 | 25 for i=1:length(h) |
samer@0 | 26 set(h(i),'XData',dom,'YData',x(:,i)); |
samer@0 | 27 end |
samer@0 | 28 if af, drawnow; end |
samer@0 | 29 end |
samer@0 | 30 end |