Publié le :
Visualisation CREATION_INTERNE

Fréquence des signes du zodiaque avec symboles Unicode

Ce code est également disponible en : Deutsch English Español
En attente de validation
Le script commence par créer un jeu de données interne 'zodiacs' contenant des noms de signes du zodiaque et leurs fréquences respectives. Ensuite, il définit un format personnalisé 'zodiacSymbol' qui associe chaque signe à son symbole Unicode correspondant. Un modèle de graphique STATGRAPH, 'unicodeUDF', est ensuite créé pour spécifier la structure d'un graphique à barres où les étiquettes de l'axe des X utiliseront ce format Unicode. Finalement, PROC SGRENDER est utilisée pour produire le graphique en se basant sur le modèle défini et les données 'zodiacs', en formatant également la variable de fréquence en pourcentages pour une meilleure lisibilité.
Analyse des données

Type : CREATION_INTERNE


Les données utilisées ('zodiacs') sont créées directement dans le script SAS via une étape DATA et l'instruction DATALINES, ce qui signifie qu'elles sont internes au script et ne proviennent pas d'une source externe.

1 Bloc de code
DATA STEP Data
Explication :
Ce bloc crée le jeu de données 'zodiacs'. Il définit la variable 'Sign' comme un caractère de 12 caractères et 'Frequency' comme un nombre. Les données sont ensuite lues à partir des lignes de données (datalines) directement intégrées dans le script.
Copié !
1DATA zodiacs;
2 LENGTH Sign $12;
3 INPUT Sign $ Frequency;
4 DATALINES;
5 Scorpio 0.094
6 Virgo 0.090
7 Gemini 0.090
8 Sagittarius 0.073
9 Leo 0.069
10 Aquarius 0.055
11 ;
12RUN;
2 Bloc de code
PROC FORMAT
Explication :
Ce bloc utilise PROC FORMAT pour définir un format utilisateur nommé '$zodiacSymbol'. Ce format est essentiel pour mapper chaque signe du zodiaque à son symbole Unicode correspondant. Cela permet d'afficher les symboles graphiques directement sur l'axe du graphique.
Copié !
1PROC FORMAT;
2 value $ zodiacSymbol
3 'Scorpio' = "(*ESC*){unicode '264F'x}" /* NOTE: unicode expects U16BE */
4 'Virgo' = "(*ESC*){unicode '264D'x}"
5 'Gemini' = "(*ESC*){unicode '264A'x}"
6 'Sagittarius' = "(*ESC*){unicode '2650'x}"
7 'Leo' = "(*ESC*){unicode '264C'x}"
8 'Aquarius' = "(*ESC*){unicode '2652'x}"
9 ;
10RUN;
3 Bloc de code
PROC TEMPLATE
Explication :
Ce bloc définit un modèle STATGRAPH appelé 'unicodeUDF'. Il configure un graphique à barres (barChartParm) avec un titre. L'option cruciale est 'xAxisOpts', qui utilise le format '$zodiacSymbol' défini précédemment pour afficher les symboles Unicode sur l'axe des X, améliorant ainsi la visualisation des catégories.
Copié !
1PROC TEMPLATE;
2 define statgraph unicodeUDF;
3 beginGraph;
4 entryTitle "Zodiac Frequency: Unicode Tick Values using User Defined Format";
5 layout overlay / xAxisOpts=(tickValueAttrs=GraphUnicodeText(size=14)
6 display=(tickvalues)
7 discreteOpts=(tickValueFormat=$zodiacSymbol.)
8 );
9 barChartParm x=Sign y=Frequency / dataTransparency=0.3
10 dataLabel=Sign;
11 endLayout;
12 endGraph;
13 END;
14RUN;
4 Bloc de code
PROC SGRENDER
Explication :
Ce bloc utilise PROC SGRENDER pour générer le graphique en se basant sur le modèle 'unicodeUDF' et le jeu de données 'zodiacs'. L'instruction 'format Frequency percent.' applique un format de pourcentage à la variable 'Frequency', rendant les valeurs plus intuitives dans le graphique.
Copié !
1 
2PROC SGRENDER template=unicodeUDF
3DATA=zodiacs;
4FORMAT Frequency percent. ;
5RUN;
6 
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.