/[MITgcm]/MITgcm/verification/global_ocean.90x40x15/diags_matlab/suptitle.m
ViewVC logotype

Contents of /MITgcm/verification/global_ocean.90x40x15/diags_matlab/suptitle.m

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1.2.1 - (show annotations) (download)
Wed Oct 23 18:26:35 2002 UTC (21 years, 11 months ago) by mlosch
Branch: release1
CVS Tags: release1_p12, release1_p10, release1_p16, release1_p15, release1_p11, release1_p14, release1_p13, release1_p17, release1_p8, release1_p9, release1_p6, release1_p7, release1_p13_pre, release1_p12_pre
Branch point for: release1_50yr
Changes since 1.1: +0 -0 lines
o fixed the verification/global_ocean.90x40x15 experiment:
 - new bathymetry (the world according to A., JMC, and M.)
 - new initial fields and forcing fields (*.bin files)
 - new POLY3.COEFFS (for the next release one should switch to a full
   equation of state)
 - fixed several errors and redundancies in the data file
 - experiment uses looped cells
 - added matlab directory with diagnostic scripts for plotting of output

1 function hout=suptitle(str)
2 %SUPTITLE Puts a title above all subplots.
3 % SUPTITLE('text') adds text to the top of the figure
4 % above all subplots (a "super title"). Use this function
5 % after all subplot commands.
6
7 % Drea Thomas 6/15/95 drea@mathworks.com
8
9 % Warning: If the figure or axis units are non-default, this
10 % will break.
11
12 % Parameters used to position the supertitle.
13
14 % Amount of the figure window devoted to subplots
15 plotregion = .92;
16
17 % Y position of title in normalized coordinates
18 titleypos = .95;
19
20 % Fontsize for supertitle
21 fs = get(gcf,'defaultaxesfontsize')+4;
22
23 % Fudge factor to adjust y spacing between subplots
24 fudge=1;
25
26 haold = gca;
27 figunits = get(gcf,'units');
28
29 % Get the (approximate) difference between full height (plot + title
30 % + xlabel) and bounding rectangle.
31
32 if (~strcmp(figunits,'pixels')),
33 set(gcf,'units','pixels');
34 pos = get(gcf,'position');
35 set(gcf,'units',figunits);
36 else,
37 pos = get(gcf,'position');
38 end
39 ff = (fs-4)*1.27*5/pos(4)*fudge;
40
41 % The 5 here reflects about 3 characters of height below
42 % an axis and 2 above. 1.27 is pixels per point.
43
44 % Determine the bounding rectange for all the plots
45
46 % h = findobj('Type','axes');
47
48 % findobj is a 4.2 thing.. if you don't have 4.2 comment out
49 % the next line and uncomment the following block.
50
51 h = findobj(gcf,'Type','axes'); % Change suggested by Stacy J. Hills
52
53 % If you don't have 4.2, use this code instead
54 %ch = get(gcf,'children');
55 %h=[];
56 %for i=1:length(ch),
57 % if strcmp(get(ch(i),'type'),'axes'),
58 % h=[h,ch(i)];
59 % end
60 %end
61
62
63
64
65 max_y=0;
66 min_y=1;
67
68 oldtitle =0;
69 for i=1:length(h),
70 if (~strcmp(get(h(i),'Tag'),'suptitle')),
71 pos=get(h(i),'pos');
72 if (pos(2) < min_y), min_y=pos(2)-ff/5*3;end;
73 if (pos(4)+pos(2) > max_y), max_y=pos(4)+pos(2)+ff/5*2;end;
74 else,
75 oldtitle = h(i);
76 end
77 end
78
79 if max_y > plotregion,
80 scale = (plotregion-min_y)/(max_y-min_y);
81 for i=1:length(h),
82 pos = get(h(i),'position');
83 pos(2) = (pos(2)-min_y)*scale+min_y;
84 pos(4) = pos(4)*scale-(1-scale)*ff/5*3;
85 set(h(i),'position',pos);
86 end
87 end
88
89 np = get(gcf,'nextplot');
90 set(gcf,'nextplot','add');
91 if (oldtitle),
92 delete(oldtitle);
93 end
94 ha=axes('pos',[0 1 1 1],'visible','off','Tag','suptitle');
95 ht=text(.5,titleypos-1,str);set(ht,'horizontalalignment','center','fontsize',fs);
96 set(gcf,'nextplot',np);
97 axes(haold);
98 if nargout,
99 hout=ht;
100 end
101
102
103

  ViewVC Help
Powered by ViewVC 1.1.22