annotate +anim/setup_time_quantity_plot.m @ 70:243c558dc3ae

Made end of animated quantity plot nicer.
author Jonatan Werpers <jonatan@werpers.com>
date Mon, 23 Nov 2015 14:07:03 +0100
parents f87003695677
children 942cb3c53a47
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
1 function [update_data, plot_handles] = setup_time_quantity_plot(yfun)
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 default_arg('yfun',@(y)y);
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3
69
f87003695677 Moved drawno out of plot update functions for huge performance boost.
Jonatan Werpers <jonatan@werpers.com>
parents: 0
diff changeset
4 if isa(yfun,'function_handle')
f87003695677 Moved drawno out of plot update functions for huge performance boost.
Jonatan Werpers <jonatan@werpers.com>
parents: 0
diff changeset
5 yfun = {yfun};
f87003695677 Moved drawno out of plot update functions for huge performance boost.
Jonatan Werpers <jonatan@werpers.com>
parents: 0
diff changeset
6 end
f87003695677 Moved drawno out of plot update functions for huge performance boost.
Jonatan Werpers <jonatan@werpers.com>
parents: 0
diff changeset
7
0
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
8 t = [];
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
9 for i = 1:length(yfun)
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
10 plot_handles(i) = line(0,0);
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 plot_handles(i).XData = [];
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
12 plot_handles(i).YData = [];
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
13 quantities{i} = [];
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
14 end
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
15
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
16 axis_handle = gca;
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
17 legend()
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
18
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
19
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
20 function update(t_now,varargin)
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
21 if ishandle(axis_handle)
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
22 t = [t t_now];
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
23 for j = 1:length(yfun)
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
24 quantities{j} = [quantities{j} yfun{j}(varargin{:})];
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
25 plot_handles(j).XData = t;
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
26 plot_handles(j).YData = quantities{j};
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
27 end
70
243c558dc3ae Made end of animated quantity plot nicer.
Jonatan Werpers <jonatan@werpers.com>
parents: 69
diff changeset
28
243c558dc3ae Made end of animated quantity plot nicer.
Jonatan Werpers <jonatan@werpers.com>
parents: 69
diff changeset
29 if t(end) > t(1)
243c558dc3ae Made end of animated quantity plot nicer.
Jonatan Werpers <jonatan@werpers.com>
parents: 69
diff changeset
30 xlim([t(1) 1.1*t(end)]);
243c558dc3ae Made end of animated quantity plot nicer.
Jonatan Werpers <jonatan@werpers.com>
parents: 69
diff changeset
31 end
0
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
32 end
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
33 end
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
34 update_data = @update;
48b6fb693025 Initial commit.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
35 end