/[MITgcm]/MITgcm_contrib/gael/matlab/verticalplot.m
ViewVC logotype

Annotation of /MITgcm_contrib/gael/matlab/verticalplot.m

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


Revision 1.1 - (hide annotations) (download)
Mon Sep 3 22:11:25 2007 UTC (17 years, 10 months ago) by gforget
Branch: MAIN
CVS Tags: HEAD
various matlab scripts

1 gforget 1.1 %22/11/2003
2     %auteur : Gael Forget
3     %version : beta
4     %objet : a la realsiation d'un plot xz ou yz, on utilise
5     %des echelles differentes au dessus/en dessous de 500m
6    
7     %remarque : old version etait spacifique a chaque type
8     % de plot, cette nouvelle se vaut generique...
9    
10     function [varargout]=verticalplot(typeplot,cur_x,cur_z,varargin);
11     %variables d'entree :
12     %1) typeplot est le nom du type de plot (px : pcolor)
13     %2) cur_x et cur_z sont les chamsp x et z
14     %3) varargin sont les autres options a passer a la routine de plot
15    
16    
17     %nouvelles ordonnees :
18     xplot2=cur_x; yplot2=myverticaldeform(cur_z);
19    
20     %************************************
21     %gestion des vars de sortie (partie 1)
22     tmptxt='';
23     if nargout==1
24     tmptxt='[tmp1]=';
25     elseif nargout>1
26     tmptxt='[tmp1';
27     for kkk=2:nargout
28     tmptxt=[tmptxt ',tmp' num2str(kkk)];
29     end
30     tmptxt=[tmptxt ']='];
31     end
32     %************************************
33    
34    
35     %le plot en lui meme :
36     eval([tmptxt typeplot '(xplot2,yplot2,varargin{:});']);
37    
38    
39     %************************************
40     %gestion des vars de sortie (partie 2)
41     if nargout>=1
42     for kkk=1:nargout
43     eval(['varargout(kkk) = {tmp' num2str(kkk) '};'])
44     end
45     end
46     %************************************
47    
48    
49     %reglage des ytics :
50     newtick=[floor(min(min(cur_z))) ceil(max(max(cur_z)))];
51     if (newtick(1)<=500)&(newtick(2)>500)
52     tmp1=100*floor(newtick(1)/100); tmp2=ceil(newtick(2)/500)*500;
53     newtick=[tmp1:50:250]; newtick=[ newtick(1:end) [500:500:tmp2]];
54     %newtick=[tmp1:100:500]; newtick=[ newtick(1:end-1) [500:500:tmp2]];
55     %newtick=[tmp1:100:1000]; newtick=[ newtick(1:end-1) [1000:500:tmp2]];
56     elseif (newtick(1)<=500)
57     tmp1=floor(newtick(1)/50)*50; tmp2=ceil(newtick(2)/50)*50;
58     newtick=[tmp1:50:tmp2];
59     else
60     tmp1=floor(newtick(1)/500)*500; tmp2=ceil(newtick(2)/500)*500;
61     newtick=[tmp1:500:tmp2];
62     end
63     %on les range dans l'ordre approprie :
64     newtick=flipdim(newtick,2);
65    
66    
67     %format texte :
68     newticklabel=[];
69     for kkk=1:length(newtick)
70     newticklabel=strvcat(newticklabel,num2str(newtick(kkk)));
71     end
72    
73     %mise a jour des yticks :
74     newtick=myverticaldeform(newtick);
75     set(gca,'YTick',newtick);
76     set(gca,'YTickLabel',newticklabel);
77    
78    
79    

  ViewVC Help
Powered by ViewVC 1.1.22