Der Abschnitt beginnt mit der Konvertierung der X- (Längengrad) und Y- (Breitengrad) Variablen von Radiant in Grad, um sie an die von der CHOROMAP-Prozedur erwarteten Projektionstypen anzupassen. Anschließend werden die Plot-Daten erstellt, indem nur die 48 zusammenhängenden Bundesstaaten berücksichtigt und die FIPS-Codes (Federal Information Processing Standards) der Staaten gesammelt werden. Ein globaler Titel und eine Fußnote werden zur Kontextualisierung der Grafik zugewiesen. Schließlich wird die SGMAP-Prozedur ausgeführt, die einen Karten-Datensatz der Staaten, Bevölkerungsantwortdaten des U.S. Census Bureau 2010 (hier simuliert durch scoreperstate) und den Plot-Datensatz verwendet. Die ESRIMAP-Anweisung wird verwendet, um eine Basiskarte zu erstellen, CHOROMAP, um die Bevölkerung der Staaten mit einem Farbverlauf darzustellen, und TEXT, um die Namen der Staaten zuzuweisen. Eine Gradientenlegende wird mit GRADLEGEND hinzugefügt, um die Interpretation der durchschnittlichen Kredit-Scores zu verbessern.
Datenanalyse
Type : SASHELP_ET_CREATION_INTERNE
Die Beispiele verwenden die SASHELP.MAPS-Bibliotheken (MAPS.STATES, MAPS.USCENTER) und einen internen Datensatz 'scoreperstate', der über einen DATA-Schritt für die Autonomie des Beispiels erstellt wurde.
1 Codeblock
DATA STEP Data
Erklärung : Erstellung eines Dummy-Datensatzes 'work.scoreperstate' zur Simulation der durchschnittlichen Kredit-Scores pro Bundesstaat, notwendig, um das Beispiel eigenständig zu gestalten. Die FIPS-Codes der Staaten werden als Identifikatoren verwendet.
Erklärung : Dieser Schritt konvertiert die Längen- (X) und Breiten- (Y) Variablen des Datensatzes MAPS.STATES von Radiant in Grad, was für die Anpassung der Projektionstypen erforderlich ist. Die Staaten 2 (Alaska), 15 (Hawaii) und 72 (Puerto Rico) sind ausgeschlossen.
Kopiert!
data states;
set maps.states;
if state ^in(2,15,72); /* Exclut l'Alaska, Hawaï et Porto Rico */
x = -x * 45/atan(1); /* Conversion de la longitude en degrés */
y = y * 45/atan(1); /* Conversion de la latitude en degrés */
run;
1
DATA states;
2
SET maps.states;
3
IF state ^in(2,15,72); /* Exclut l'Alaska, Hawaï et Porto Rico */
4
x = -x * 45/atan(1); /* Conversion de la longitude en degrés */
5
y = y * 45/atan(1); /* Conversion de la latitude en degrés */
6
RUN;
3 Codeblock
DATA STEP
Erklärung : Dieser DATA-Schritt erstellt den Datensatz 'plot_data' aus MAPS.USCENTER, filtert die 48 unteren Staaten und konvertiert den Längengrad. Er generiert auch den Namen des Bundesstaates aus dem FIPS-Code und einen formatierten 'state_fips' für die Verknüpfung mit den Score-Daten.
Kopiert!
data plot_data;
set maps.uscenter;
if state ^in(2,15,72) and ocean^='Y';
long = -long;
statename = fipstate(state); /* Récupère le code FIPS de l'état */
state_fips = put(state, z2.); /* Crée une variable state_fips à partir de 'state' pour la jointure */
run;
1
DATA plot_data;
2
SET maps.uscenter;
3
IF state ^in(2,15,72) and ocean^='Y';
4
long = -long;
5
statename = fipstate(state); /* Récupère le code FIPS de l'état */
6
state_fips = put(state, z2.); /* Crée une variable state_fips à partir de 'state' pour la jointure */
7
RUN;
4 Codeblock
Déclarations Globales
Erklärung : Verwendet die globalen TITLE- und FOOTNOTE-Deklarationen, um den Haupttitel der Grafik und eine erläuternde Fußnote festzulegen.
Kopiert!
title 'Average Credit Score in Each State';
footnote4 'Map only includes the lower 48 states in the United States';
1
title 'Average Credit Score in Each State';
2
footnote4 'Map only includes the lower 48 states in the United States';
3
5 Codeblock
PROC SGMAP
Erklärung : Führt die SGMAP-Prozedur aus, um die Grafik zu generieren. Sie verwendet die Datensätze 'states', 'scoreperstate' und 'plot_data'. ESRIMAP definiert die Basiskarte, CHOROMAP stellt die durchschnittlichen Kredit-Scores pro Bundesstaat mit einem Farbverlauf dar, und TEXT fügt die Namen der Bundesstaaten hinzu. GRADLEGEND bietet eine Legende für den Farbverlauf.
Kopiert!
proc sgmap mapdata=work.states
maprespdata=work.scoreperstate /* Utilisation du jeu de données autonome */
plotdata=work.plot_data;
esrimap
url='http://services.arcgisonline.com/arcgis/rest/services/Canvas/World_Light_Gray_Base';
choromap _Score_ / mapid=state id=state_fips /* Utilisation de state_fips pour la jointure */
density=1
numlevels=4 leveltype=none
colormodel=( sty greenyellow deepskyblue cornflowerblue beige)
name='choro';
text x=long y=lat text=statename /
textattrs=(size=6pt);
gradlegend 'choro' / title='Average Credit Score'
extractscale;
run;
quit;
1
PROC SGMAP mapdata=work.states
2
maprespdata=work.scoreperstate /* Utilisation du jeu de données autonome */
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.