Publié le :
Reporting CREATION_INTERNE

Graphe à barres empilées 3D avec PROC SGPLOT

Ce code est également disponible en : Deutsch English Español
En attente de validation
Le script commence par définir une macro-variable pour le nom du fichier de sortie et un fileref ODS. Il crée ensuite un jeu de données interne, `my_data`, en utilisant des `datalines`. La majeure partie du script configure l'environnement ODS pour la génération d'un fichier HTML contenant le graphique. `PROC SGPLOT` est utilisée pour créer un graphique à barres empilées, avec des options de style et de mise en forme spécifiques pour les axes et les couleurs des barres, incluant un effet de brillance (dataskin=sheen) pour un rendu 3D. Le graphique est sauvegardé au format PNG dans le fichier HTML.
Analyse des données

Type : CREATION_INTERNE


Le jeu de données 'my_data' est créé directement dans le script à l'aide d'une instruction DATALINES.

1 Bloc de code
DÉCLARATION GLOBALE
Explication :
Définit une macro-variable `name` pour nommer le fichier de sortie ODS et attribue le répertoire de travail courant au fileref `odsout` pour les sorties ODS.
Copié !
1%let name=col4;
2filename odsout '.';
2 Bloc de code
DATA STEP Data
Explication :
Crée le jeu de données `my_data` en utilisant l'instruction `datalines` pour fournir les données directement dans le script. Ce jeu de données sera la source pour le graphique.
Copié !
1DATA my_data;
2INPUT CATEGORY SERIES $ 3-11 AMOUNT;
3DATALINES;
41 Series A 5
52 Series A 6.8
63 Series A 9.2
71 Series B 6.5
82 Series B 6.9
93 Series B 5.6
10;
11RUN;
3 Bloc de code
PROC SGPLOT
Explication :
Cette section configure le système ODS pour générer une sortie HTML. Elle ferme la sortie LISTING par défaut et ouvre la sortie HTML, spécifiant le chemin et le nom du fichier. Les options `ODS GRAPHICS` sont utilisées pour définir le format d'image (PNG), le nom et les dimensions du graphique. Deux titres sont définis pour le graphique. `PROC SGPLOT` est ensuite appelée pour créer un graphique à barres empilées à partir du jeu de données `my_data`. Les options incluent la suppression de la légende automatique, le remplissage, la définition des couleurs des données, et surtout `dataskin=sheen` pour un effet 3D. Les axes Y et X sont configurés avec des étiquettes et des valeurs de style spécifiques. Enfin, ODS HTML est fermée et ODS LISTING est rouverte.
Copié !
1ODS LISTING CLOSE;
2ODS HTML path=odsout body="&name..htm"
3 (title="SGplot Stacked Bar (3D)")
4 style=htmlblue;
5 
6ods graphics / imagefmt=png imagename="&name"
7 width=800px height=600px noborder imagemap;
8 
9title1 color=gray33 ls=0.5 h=23pt "Stacked Bar";
10title2 color=gray33 ls=0.5 h=17pt "With 3D Shading";
11 
12PROC SGPLOT DATA=my_data noautolegend pad=(left=10% right=15%);
13styleattrs datacolors=(cx9999ff cx993366);
14vbar category / response=amount stat=sum
15 group=series barwidth=.6
16 dataskin=sheen /* <--- basically, added this line! */
17 outlineattrs=(color=black) nostatlabel;
18yaxis
19 values=(0 to 16 BY 4)
20 labelattrs=(size=16pt weight=bold color=gray33)
21 valueattrs=(size=16pt weight=bold color=gray33)
22 offsetmax=0 grid minor minorcount=3;
23xaxis
24 labelattrs=(size=16pt weight=bold color=gray33)
25 valueattrs=(size=16pt weight=bold color=gray33)
26 display=(noticks);
27RUN;
28 
29QUIT;
30ODS HTML CLOSE;
31ODS LISTING;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.