1 | function [h0]=colorbartype(pos,lev,lev_pas,clip_lev,hpal,orien,xxx); |
---|
2 | |
---|
3 | % 30/10/97- NS: option "orien" pour positionner la barre verticalement |
---|
4 | % ou horizontalement--> 1 ou 0 |
---|
5 | % 08/09/00- EK: si les valeurs sont petites, ecriture au format exponentiel |
---|
6 | |
---|
7 | h0 = axes('Position',pos,'Box','on'); |
---|
8 | ind_lev=find( lev>=(clip_lev(1)-eps) & (lev<=clip_lev(2)+eps) ); |
---|
9 | tab_lev=[lev(ind_lev);lev(ind_lev)]; |
---|
10 | |
---|
11 | % horizontale par defaut |
---|
12 | if (nargin < 6), orien = 0; end |
---|
13 | |
---|
14 | % labels en bas ou a droite par defaut |
---|
15 | if nargin < 7, |
---|
16 | if orien == 0, xxx=-.5; end |
---|
17 | if orien == 1, xxx=4; end |
---|
18 | end |
---|
19 | |
---|
20 | % Format ecriture des labels (expo ou non) |
---|
21 | if abs(clip_lev(end)) <= 1e-2, iexp = 1; else iexp = 0; end |
---|
22 | |
---|
23 | if orien == 0, |
---|
24 | |
---|
25 | pcolor(tab_lev); |
---|
26 | set(h0,'xticklabel', '','yticklabel',''); |
---|
27 | abs_bar=0:1/(length(ind_lev)-1):1; |
---|
28 | for j=1:lev_pas:length(ind_lev) |
---|
29 | if iexp == 0, s=num2str(lev(ind_lev(j))); else |
---|
30 | s = sprintf('%0.1e', lev(ind_lev(j))); end |
---|
31 | text(abs_bar(j),xxx,s,'Fontsize', 9, 'HorizontalAlignment', ... |
---|
32 | 'Center', 'Units', 'normalized'); |
---|
33 | end |
---|
34 | |
---|
35 | else |
---|
36 | |
---|
37 | pcolor(tab_lev'); |
---|
38 | set(h0,'xticklabel', '','yticklabel',''); |
---|
39 | ord_bar=0:1/(length(ind_lev)-1):1; |
---|
40 | for j=1:lev_pas:length(ind_lev) |
---|
41 | if iexp == 0, s=num2str(lev(ind_lev(j))); else |
---|
42 | s = sprintf('%0.1e', lev(ind_lev(j))); end |
---|
43 | tt=text(xxx,ord_bar(j),s,'Fontsize', 9, ... |
---|
44 | 'HorizontalAlignment','right','Units', 'normalized'); |
---|
45 | % tt=text(xxx,ord_bar(j),s,'Fontsize', 6,'HorizontalAlignment','right','Units', 'normalized'); |
---|
46 | end |
---|
47 | |
---|
48 | end |
---|
49 | colormap(hpal); |
---|
50 | caxis(clip_lev); |
---|
51 | |
---|