Pratique de Sas Windows ...9.3 Volume 2 - Ined
Pratique de Sas Windows ...9.3 Volume 2 - Ined
Pratique de Sas Windows ...9.3 Volume 2 - Ined
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
15. Généralisation<br />
Il est évi<strong>de</strong>mment intéressant <strong>de</strong> rendre notre pyrami<strong>de</strong> utilisable ultérieurement et donc <strong>de</strong> s’affranchir<br />
du lieu où se trouve les fichiers, du nom <strong>de</strong> la table et du nom <strong>de</strong>s variables et éventuellement d’autres<br />
caractéristiques comme la légen<strong>de</strong>… Il faut donc retravailler le co<strong>de</strong> en prenant par exemple le<br />
modèle du graphique issu <strong>de</strong> la proc sg<strong>de</strong>sign ou le co<strong>de</strong> sauvegardé plus haut en point 13 :<br />
Pour construire le programme suivant :<br />
libname tpl "D:\My <strong>Sas</strong> Files\tpl";<br />
ods path tpl.sgd(update) <strong>Sas</strong>user.templat(read)<br />
<strong>Sas</strong>help.tmplmst(read);<br />
proc template;<br />
<strong>de</strong>fine statgraph sg<strong>de</strong>sign;<br />
dynamic _AGE _MAS _AGE2 _FEM _Title _Footnote _Labh<br />
_Labf;<br />
begingraph / <strong>de</strong>signwidth=681 <strong>de</strong>signheight=855;<br />
entrytitle halign=center _Title;<br />
entryfootnote halign=center _Footnote /<br />
textattrs=(family='Albany AMT' size=8 style=italic<br />
weight=normal );<br />
layout lattice /<br />
rowdatarange=data row2datarange=data<br />
columndatarange=data<br />
columns=2 rowgutter=10 columngutter=10<br />
columnweights=(0.5 0.5);<br />
layout overlay /<br />
xaxisopts=(reverse=true<br />
display=(LINE LABEL TICKVALUES) griddisplay=on<br />
label=( _Labh )<br />
labelattrs=(size=8 ) tickvalueattrs=(size=8)<br />
gridattrs=(color=CXC6C3C6 pattern=2 thickness=2)<br />
)<br />
yaxisopts=( display=(LINE ));<br />
barchart x=_AGE y=_MAS / name='FrH1999'<br />
legendlabel='Hommes'<br />
datatransparency=0.5 xaxis=X yaxis=Y<br />
barlabel=false<br />
orient=horizontal<br />
barwidth=1.0 clusterwidth=1.0;<br />
endlayout;<br />
layout overlay /<br />
xaxisopts=( reverse=false griddisplay=on<br />
label=( _Labf)<br />
labelattrs=(size=8 ) tickvalueattrs=(size=8 )<br />
gridattrs=(color=CXC6C3C6 pattern=2 thickness=2))<br />
yaxisopts=( reverse=false<br />
display=(TICKS LINE TICKVALUES)<br />
griddisplay=off tickvalueattrs=(size=8 ));<br />
barchart x=_AGE2 y=_FEM / name='FrF1999'<br />
legendlabel='Femmes'<br />
datatransparency=0.25 display=(FILL)<br />
barlabel=false<br />
orient=horizontal barwidth=1.0<br />
discreteoffset=-0.14<br />
groupdisplay=Stack clusterwidth=1.0<br />
fillattrs=GraphData2;<br />
endlayout;<br />
endlayout;<br />
endgraph;<br />
end;<br />
run;<br />
Précautions : pour sauvegar<strong>de</strong>r la<br />
création <strong>de</strong> son template sg<strong>de</strong>sign <strong>de</strong><br />
type statgraph dans un magasin<br />
personnel tpl.sgd<br />
On rajoute ici <strong>de</strong>s macrovariables <strong>de</strong><br />
type template pour pouvoir les passer<br />
en dynamique dans la procédure qui<br />
suit.<br />
Au passage, nous retrouvons les<br />
éléments balancés :<br />
Begingraph/Endgraph<br />
Layout Lattice/endlayout et<br />
2 Layout Overlay.<br />
Dans le premier, l’axe <strong>de</strong>s X est <strong>de</strong> type<br />
reverse=true pour <strong>de</strong>ssiner vers la<br />
gauche avec une vue sur un barchart à<br />
orientation horizontale avec <strong>de</strong>s lignes<br />
tracées par graduations (grid).<br />
Les autres autres mots-clé spécifient<br />
<strong>de</strong>s détails (épaisseur, couleur,taille..en<br />
pixels.). L’axe Y (vertical en fait) se<br />
limitera <strong>de</strong> ce côté à une ligne.<br />
Dans la forme barchart, on affecte les<br />
valeurs aux axes et on ne <strong>de</strong>man<strong>de</strong> pas<br />
barlabel=true qui provoquerait<br />
.<br />
Le barwidth=1 permet d’avoir du tracé<br />
plein. Pour le reste voir Chap. 16 du<br />
manuel « <strong>Sas</strong> 9.3 GTL Reference ».<br />
Pour le graphique <strong>de</strong>s femmes à droite,<br />
l’axe <strong>de</strong>s X ne sera pas reverse,<br />
comportera <strong>de</strong>s lignes <strong>de</strong> références.<br />
L’axe <strong>de</strong>s Y (vertical) comprendra par<br />
contre, la graduation, les valeurs et la<br />
ligne en sa base présentée<br />
verticalement <strong>de</strong> par l’option du<br />
barchart.<br />
Ceci apparaîtra donc au centre !<br />
Une fois précisées, les macrovariables<br />
pour les axes x et y, l’instruction<br />
barchart sera réglée sur un remplissage<br />
avec une transparence modifiée et<br />
d’autres réglages d’apparence auxquels<br />
on ne touchera pas tant qu’on n’est pas<br />
<strong>de</strong>venu spécialiste du GTL.<br />
Rem : on ne peut toucher aux name qui<br />
font partie d’une définition volontaire<br />
décidée au moment <strong>de</strong> la construction<br />
<strong>de</strong> modèle.<br />
119 INED Service Informatique Wielki