-
Notifications
You must be signed in to change notification settings - Fork 1
/
Código do Mapa Coroplético (GeoJSON).sas
74 lines (62 loc) · 1.86 KB
/
Código do Mapa Coroplético (GeoJSON).sas
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
/* CÓDIGO PARA CRIAÇÃO DE UM MAPA COROPLÉTICO NO SAS DE ARQUIVO GEOJSON (ONLINE) */
/* Versão: 1.4 */
/* Status: Finalizada */
/* Autor: Arthur Diego Pereira */
/* Contribuição: Geiziane Silva de Oliveira */
/* */
/* FAVOR NÃO REMOVER OS CRÉDITOS */
/* */
/* 1. Fazer o Download do Arquivo GeoJSON do Github */
filename mapa temp;
proc http
url="https://github.com/artYYDP/SAS-Geo/raw/main/geojson/Estados_UF_BR/PR-41.geojson"
method="GET"
out=mapa;
run;
/* 2. Ler o Arquivo GeoJSON usando a Biblioteca JSON */
libname jsonlib json fileref=mapa;
/* 3. Examinar a Estrutura do GeoJSON */
proc contents data=jsonlib._all_;
run;
/* 4. Unir as tabelas */
data map_data;
merge jsonlib.features_properties
jsonlib.features_geometry (keep=ordinal_features ordinal_geometry type);
by ordinal_features;
run;
/* 5. Preparar os dados para o gráfico GMAP */
data map_data;
merge map_data
jsonlib.geometry_coordinates;
by ordinal_geometry;
run;
/* 6. Preparar os dados para a Plotagem */
data plot_data (drop=element1 element2);
set map_data;
x = element1;
y = element2;
i = 1;
output;
run;
/* 7. Adicionar sequencia */
data plot_data;
set plot_data;
seqno=_n_;
run;
/* 8. Macro para Carregar Dados no CAS e Promover a Tabela */
%macro sas_load_data_cas(incaslib=,casdata=,data=,outcaslib=, casout=);
/* 8.1. Deleta a tabela da memória */
proc casutil;
droptable incaslib = "&outcaslib." casdata = "&casdata." quiet;
run;
/* 8.2. Carrega tabela no CAS*/
proc casutil;
load data=&data. casout="&casout." outcaslib=&outcaslib. replace;
quit;
/* 8.3. Promove a tabela (disponível para todos os usuário acesso ao servidor) */
proc casutil;
promote incaslib = "&outcaslib." casdata = "&casdata."
outcaslib = "&outcaslib." casout = "&casout.";
quit;
%mend sas_load_data_cas;
%sas_load_data_cas(incaslib=Public,casdata=MAPA,data=plot_mapa,outcaslib=Public, casout=MAPA)