Les données utilisées pour le graphique sont entièrement générées au sein du script via une étape DATA avec des 'datalines'. La table résultante est 'my_data'.
1 Bloc de code
Macro
Explication : Définit une variable macro 'name' avec la valeur 'bub1'. Cette variable sera utilisée ultérieurement pour nommer les fichiers de sortie (HTML, PNG).
Copié !
%let name=bub1;
1
%let name=bub1;
2 Bloc de code
Global Statement
Explication : Assignation d'une référence de fichier (fileref) 'odsout' au répertoire de travail courant. Cela indique à SAS où enregistrer les fichiers de sortie générés par ODS.
Copié !
filename odsout '.';
1
filename odsout '.';
3 Bloc de code
DATA STEP Data
Explication : Crée la table de données SAS 'my_data'. La variable 'color' est définie avec une longueur de 8 caractères. Les variables 'series', 'x', 'y' et 'value' sont lues à partir des lignes de données ('datalines') fournies directement dans le script.
Copié !
data my_data;
length color $ 8;
input series $ 1-1 x y value;
datalines;
A 1.0 1.0 .65
A 2.0 0.9 0.3
B 1.4 2.3 .65
B 2.2 1.4 0.3
;
run;
1
DATA my_data;
2
LENGTH color $ 8;
3
INPUT series $ 1-1 x y value;
4
DATALINES;
5
A 1.01.0 .65
6
A 2.00.90.3
7
B 1.42.3 .65
8
B 2.21.40.3
9
;
10
RUN;
4 Bloc de code
ODS Statements
Explication : Ferme la destination ODS LISTING par défaut. Ouvre ensuite la destination ODS HTML, spécifiant le chemin de sortie via le fileref 'odsout', le nom du fichier HTML ('bub1.htm' grâce à la macro variable '&name'), un titre pour le document HTML et un style 'htmlblue'. Les options 'ods graphics' sont configurées pour générer une image PNG ('bub1.png') de 800x600 pixels sans bordure et avec une carte d'image.
Explication : Définit le premier titre du graphique. Il est stylisé avec la couleur 'gray33', un espacement de ligne de 0.0 et une hauteur de police de 23 points, affichant le texte 'Bubble Plot'.
Copié !
title1 color=gray33 ls=0.0 h=23pt "Bubble Plot";
1
title1 color=gray33 ls=0.0 h=23pt "Bubble Plot";
6 Bloc de code
PROC SGPLOT
Explication : Exécute la procédure SGPLOT pour créer le graphique à bulles. Elle utilise la table 'my_data'. Les couleurs des bulles sont définies par 'styleattrs datacolors'. La déclaration 'bubble' spécifie 'x' et 'y' pour les positions, 'value' pour la taille, et 'series' pour le groupement, avec des options supplémentaires pour le rayon maximum et les attributs de ligne. Les axes X et Y sont entièrement personnalisés avec des plages de valeurs, des labels stylisés, des valeurs d'affichage et des grilles mineures.
Copié !
proc sgplot data=my_data aspect=1 noautolegend;
styleattrs datacolors=(cx9999ff cx993366);
bubble x=x y=y size=value / group=series proportional
bradiusmax=70px lineattrs=(color=gray33);
yaxis
values=(0 to 3 by 1) label='Y Axis'
labelattrs=(size=16pt weight=bold color=gray33)
valueattrs=(size=16pt weight=bold color=gray33)
offsetmin=0 offsetmax=0 grid minor minorcount=1;
xaxis
values=(0 to 3 by 1) label='X Axis'
labelattrs=(size=16pt weight=bold color=gray33)
valueattrs=(size=16pt weight=bold color=gray33)
offsetmin=0 offsetmax=0 grid minor minorcount=1;
run;
Explication : Termine l'exécution de la procédure SGPLOT avec 'quit;'. Ferme ensuite la destination ODS HTML précédemment ouverte et réactive la destination ODS LISTING, rétablissant le comportement de sortie par défaut de SAS.
Copié !
quit;
ODS HTML CLOSE;
ODS LISTING;
1
QUIT;
2
ODS HTML CLOSE;
3
ODS 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.
SAS et tous les autres noms de produits ou de services de SAS Institute Inc. sont des marques déposées ou des marques de commerce de SAS Institute Inc. aux États-Unis et dans d'autres pays. ® indique un enregistrement aux États-Unis. WeAreCAS est un site communautaire indépendant et n'est pas affilié à SAS Institute Inc.
Ce site utilise des cookies techniques et analytiques pour améliorer votre expérience.
En savoir plus.