PERSONALIZANDO GRÁFICOS COM

O PACOTE ggplot2 (PARTE II)

\[\\[0.05in]\]

2ª ESCOLA DE VERÃO

PROF. GUILHERME AUGUSTO VELOSO

UFF - 12 e 14 DE MARÇO DE 2023

\[\\[0.1in]\]

1 PACOTES

Para a condução dessa parte do minicurso, serão utilizados os seguintes pacotes:

require(readr)          # Leitura de arquivos .csv
require(dplyr)          # Manipulação de dados
require(ggplot2)        # Abordagem grĂĄfica
require(pals)           # Paleta de cores
require(geobr)          # Mapas
require(RColorBrewer)   # Paleta de cores
require(ggrepel)        # GrĂĄfico de dispersĂŁo com label

2 GRÁFICOS PARA VARIÁVEIS QUALITATIVAS E QUANTITATIVAS

A partir deste momento atĂŠ o fim do minicurso, todos os grĂĄficos colocarĂŁo em conjunto variĂĄveis qualitativas e variĂĄveis quantitativas. Com a inclusĂŁo de variĂĄveis quantitativas, a abordagem grĂĄfica ganha um novo patamar e mais grĂĄficos variados estĂŁo disponĂ­veis para serem utilizados. A base de dados dados2.csv serĂĄ utilizada para fazer esses grĂĄficos.

2.1 GRÁFICOS HEATMAP

Um Heatmap (tambĂŠm conhecido como mapa de calor) representa valores para uma variĂĄvel principal de interesse em duas variĂĄveis de eixo como uma grade de quadrados coloridos. A cor de cada cĂŠlula pode indicar um ranqueamento da variĂĄvel principal segundo alguma das variĂĄveis dos eixos ou representar sua grandeza numĂŠrica.

Os gråficos Heatmap são usados para mostrar relaçþes entre duas variåveis, uma plotada em cada eixo. Observando como as cores das cÊlulas mudam em cada eixo, você pode observar se hå algum padrão de valor para uma ou ambas as variåveis.

As variĂĄveis plotadas em cada eixo podem ser de qualquer tipo, sejam elas com rĂłtulos categĂłricos ou valores numĂŠricos. Neste Ăşltimo caso, o valor numĂŠrico deve ser agrupado como em um histograma para formar as cĂŠlulas da grade onde serĂŁo plotadas as cores associadas Ă  principal variĂĄvel de interesse. A cor ĂŠ um componente central deste tipo de grĂĄfico, por isso vale a pena escolher uma paleta de cores apropriada para corresponder aos dados.

Para exemplificar o uso desse grĂĄfico, considere os dados do GBD para o ano de 2019 com todos os estados brasileiros. AlĂŠm disso faremos um recorte para ambos os gĂŞneros e todas as faixas etĂĄrias. A variĂĄvel de interesse ĂŠ a taxa de mortalidade. Esse recorte pode ser feito com os comandos abaixo:

Dados2<-read.csv("Dados2.csv")
DadosA<-Dados2%>%filter(ANO==2019,FAIXA_ETARIA=="Todas",GENERO=="Total",METRICA=="Taxa",LOCAL!="Brasil")%>%select(LOCAL,CAUSA,VALOR)

Para cada causa de morte, serĂĄ feito um ranking das taxas de mortalidade dos estados brasileiros. Esse ranking serĂĄ responsĂĄvel pela parte colorida do grĂĄfico e ĂŠ obtido com os comandos:

DadosA<-DadosA%>%group_by(CAUSA)%>%mutate(rank = dense_rank(desc(VALOR)))
DadosA$rank<-as.factor(DadosA$rank)

Como mencionado, escolha uma paleta de cores que represente melhor o seu fenĂ´meno. Aqui, utilizaremos a paleta RdYlBu do pacote RColorBrewer, com 27 cores (27 estados brasileiros):

mycolors <- colorRampPalette(brewer.pal(8, "RdYlBu"))(27)

Enfim, o gråfico Heatmap pode ser feito com a função geom_tile a partir dos seguintes comandos:

ggplot(DadosA, aes(LOCAL,CAUSA)) +
  geom_tile(aes(fill = rank),width=0.95, height=0.95) +
  scale_fill_manual(values = mycolors) +
  geom_text(aes(label = round(VALOR, 1))) +
  scale_x_discrete(guide = guide_axis(angle = 90),position="top")+
  theme_bw()+
  theme(legend.position = "none")+
  theme(axis.title.x=element_blank(),axis.title.y=element_blank())

2.1.1 EXERCÍCIOS

1- Repita o grĂĄfico anterior para o ano de 1990 e compare com o ano de 2019.

2- Altere as cores do grĂĄfico.

2.2 GRÁFICOS BOXPLOT

Um boxplot fornece um resumo gráfico da distribuição de dados quantitativos. O boxplot mostra a forma, a tendência central e a variabilidade dos dados. É uma maneira de exibir a distribuição de dados com base em um resumo de cinco números: mínimo, primeiro quartil (Q1), mediana, terceiro quartil (Q3) e máximo.

É um dos principais gráficos da estatística por ser extremamente simples e representar características importantes de resumo de dados como posição, variabilidade, assimetria e valores discrepantes.

Nesse minicurso, deixaremos os gráficos boxplot um pouco mais robustos com novos comandos do pacote ggplot2. Para isso, considere os dados de taxa de mortalidade do GBD da causa de morte “Violencia interpessoal e auto infringida”, considerando os anos de 1990 e 2019 para os 27 estados brasileiros. Esse recorte pode ser feito com os comandos abaixo:

DadosB<-Dados2%>%filter(CAUSA=="Violencia interpessoal e auto infringida",GENERO!="Total",METRICA=="Taxa")%>%
                 filter(ANO==1990|ANO==2019,LOCAL!="Brasil",FAIXA_ETARIA!="Todas") %>%select(ANO,GENERO,FAIXA_ETARIA,LOCAL,REGIAO,VALOR)

Um primeiro boxplot considerando as taxas de mortalidade dessa causa de morte para diferentes faixas etĂĄrias e gĂŞnero pode ser construĂ­do com os seguintes comandos:

ggplot(DadosB, aes(x=factor(ANO), y=VALOR)) + 
  geom_boxplot(fill="white")+
  facet_grid(GENERO~FAIXA_ETARIA,scales="free")+
  theme_bw() +  
  theme(axis.title.x=element_blank())+
  theme(text = element_text(size = 15))+
  ylab("Taxa de mortalidade por 100 mil habitantes")

Caso vocĂŞ queira colocar cores no grĂĄfico, acrescente o argumento fill no geom_boxplot():

ggplot(DadosB, aes(x=factor(ANO), y=VALOR)) + 
  geom_boxplot(aes(fill=factor(ANO)))+
  facet_grid(GENERO~FAIXA_ETARIA,scales="free")+
  theme_bw()  +  
  theme(axis.title.x=element_blank())+
  theme(text = element_text(size = 15))+
  ylab("Taxa de mortalidade por 100 mil habitantes")+
  theme(legend.position="none")

Para finalizar, pode-ser útil destacar todas as observaçþes de cada boxplot. No nosso caso, serão os 27 estados brasileiros em cada diagrama de caixa. Isso pode ser feito com a inclusão do comando geom_jitter():

ggplot(DadosB, aes(x=factor(ANO), y=VALOR)) + 
  geom_boxplot(outlier.shape=NA,fill="white")+
  facet_grid(GENERO~FAIXA_ETARIA,scales="free") +  
  geom_jitter()+
  theme_bw() +
  theme(axis.title.x=element_blank())+
  theme(text = element_text(size = 15))+
  ylab("Taxa de mortalidade por 100 mil habitantes")

Que tal colorir esses pontos de acordo com a região do Brasil? Isso pode ser feito adaptando a função geom_point da seguinte forma:

ggplot(DadosB, aes(x=factor(ANO), y=VALOR)) + 
  theme_bw() +
  geom_boxplot(outlier.shape=NA,fill="white")+
  facet_grid(GENERO~FAIXA_ETARIA,scales="free") +  
  geom_point(position=position_jitterdodge(jitter.width=0.5, dodge.width = 0), 
             size=2, aes(color=REGIAO))+
  theme(axis.title.x=element_blank())+
  theme(legend.title=element_blank())+
theme(text = element_text(size = 12))+
  theme(legend.position="bottom")+
  ylab("Taxa de mortalidade por 100 mil habitantes")

2.2.1 EXERCÍCIOS

1- Escolha outra causa de morte e faça o gråfico boxplot. Para ter acesso a todas as causas, faça unique(DadosB$CAUSA).

2.3 GRÁFICOS DE SÉRIE TEMPORAL (LINHA)

Um gråfico de sÊrie temporal, tambÊm conhecido como gråfico de tempo, Ê um tipo de gråfico que exibe pontos de dados coletados em uma sequência temporal. Em um gråfico de sÊrie temporal, o eixo x representa o tempo e o eixo y representa a variåvel que estå sendo medida. Usamos gråficos de tempo em muitas åreas, como economia, finanças, engenharia e meteorologia, para visualizar e analisar mudanças ao longo do tempo.

Neste minicurso, utilizaremos os dados do GBD para visualizar a evolução das taxas de mortalidade ao longo dos anos. Para isso, recortaremos a base para aS causaS de morte “Violência interpessoal e auto infringida” e “Lesões por transporte” para o Brasil:

DadosC<-Dados2%>%filter(CAUSA=="Violencia interpessoal e auto infringida"|CAUSA=="Lesoes por transporte",GENERO!="Total",METRICA=="Taxa",LOCAL=="Brasil",FAIXA_ETARIA!="Todas") %>%select(ANO,CAUSA,GENERO,FAIXA_ETARIA,VALOR)

A sÊrie temporal pode ser construída com a função geom_line() e os seguintes comandos:

ggplot(DadosC, aes(x = ANO, y = VALOR)) + theme_bw() +
  geom_line(aes(color = FAIXA_ETARIA), size = 2) +
  scale_x_continuous(breaks=seq(1990,2019,3)) +
  theme(legend.position="bottom")+
  facet_grid(GENERO~CAUSA,scales = "free")+
  xlab(" ")+ylab("Taxa de mortalidade por 100 mil habitantes")+
  theme(legend.title = element_blank())+
    theme(text = element_text(size = 15))

Para introduzir os pontos no grĂĄfico, basta acrescentar o comando geom_point:

ggplot(DadosC, aes(x = ANO, y = VALOR)) + theme_bw() +
  geom_line(aes(color = FAIXA_ETARIA), size = 2) +
  geom_point(aes(color = FAIXA_ETARIA), size = 3)+
  scale_x_continuous(breaks=seq(1990,2019,3)) +
  theme(legend.position="bottom")+
  facet_grid(GENERO~CAUSA,scales = "free")+
  xlab(" ")+ylab("Taxa de mortalidade por 100 mil habitantes")+
  theme(legend.title = element_blank())+
    theme(text = element_text(size = 15))

2.3.1 EXERCÍCIOS

1- Escolha outras duas causas de morte e refaça o gråfico.

2- Altere o local para o Rio de Janeiro.

2.4 GRÁFICOS DE ÁREA

Os gråficos de årea são gråficos de linhas, mas com a årea abaixo da linha preenchida com uma determinada cor ou textura. Os gråficos de årea são desenhados primeiro plotando pontos de dados em uma grade de coordenadas cartesianas, unindo uma linha entre os pontos e finalmente preenchendo o espaço abaixo da linha completa.

Assim como os grĂĄficos de linha, os grĂĄficos de ĂĄrea sĂŁo usados para exibir o desenvolvimento de valores quantitativos ao longo de um intervalo ou perĂ­odo de tempo. Eles sĂŁo mais comumente usados para mostrar tendĂŞncias, em vez de transmitir valores especĂ­ficos.

Para exemplificar o uso deste gråfico, considere os dados do GBD para o Brasil. O objetivo serå avaliar como o número total de óbitos no Brasil se distribui proporcionalmente entre as causas de morte ao longo dos anos. Essa avaliação serå feita considerando diferentes faixas etårias e gêneros. O recorte da base pode ser feito com os seguintes comandos:

DadosD<-Dados2%>%filter(FAIXA_ETARIA!="Todas",GENERO!="Total",METRICA=="Numero",LOCAL=="Brasil")%>%select(ANO,FAIXA_ETARIA,CAUSA,GENERO,VALOR)

Como temos 21 causas de morte para serem representadas por meio de cores, precisamos de uma paleta de cores ampla. Recorreremos ao pacote pals e a paleta de cores kelly() com o seguinte comando:

mycolors <- kelly()

Enfim, o grĂĄfico de ĂĄrea ĂŠ feito com o comando geom_area() a partir dos seguintes cĂłdigos:

ggplot(DadosD, (aes(x = ANO,  y = VALOR, fill = CAUSA))) +
  geom_area(position = "fill") +
  scale_y_continuous(labels = scales::percent) + facet_grid(GENERO~FAIXA_ETARIA) +
  scale_fill_manual(values = mycolors,name=" ")+
  theme_bw() +
  theme(legend.position="bottom") +
  scale_x_continuous(breaks=c(1990,1995,2000,2005,2010,2015,2019))+ xlab(" ") + ylab(" ")+
  theme(text = element_text(size = 15))

2.4.1 EXERCÍCIOS

1- Repita o grĂĄfico anterior para os estados de Minas Gerais, Rio de Janeiro e Santa Catarina.

2.5 GRÁFICOS PIRÂMIDE

Você estå interessado em visualizar dados demogråficos de uma forma única e esclarecedora? As pirâmides populacionais são uma ferramenta fantåstica para esse propósito! Eles permitem comparar a distribuição das populaçþes entre grupos etårios para diferentes sexos ou períodos de tempo.

Para exemplificar esse gráfico, utilizaremos os dados do GBD para a causa de morte “Violencia interpessoal e auto infringida” no ano de 2019:

DadosE <- Dados2%>%filter(CAUSA=="Violencia interpessoal e auto infringida",FAIXA_ETARIA!="Todas",GENERO!="Total",METRICA=="Taxa",LOCAL=="Brasil", ANO ==2019)%>%select(FAIXA_ETARIA,GENERO,VALOR)

O gråfico pirâmide Ê feito no ggplot2 com duas aplicaçþes da função geom_bar:

ggplot(DadosE) +
  geom_bar(data=DadosE[DadosE$GENERO=="F",], aes(x=-VALOR,y=FAIXA_ETARIA,fill=GENERO), stat="identity") +
  geom_bar(data=DadosE[DadosE$GENERO=="M",], aes(x=VALOR,y=FAIXA_ETARIA,fill=GENERO), stat="identity") +
  geom_vline(xintercept=0, colour="white", lwd=1) +
  scale_x_continuous(breaks=c(-10,0,10,20,30,40,50,60,70,80,90,100), labels=c(10,0,10,20,30,40,50,60,70,80,90,100)) +
  theme_bw() +
  ylab("Faixa etĂĄria")+xlab("Taxa de mortalidade por 100 mil habitantes")+
  theme(text = element_text(size = 15))+
  theme(legend.position="bottom")

2.5.1 EXERCÍCIOS

1- Faça um gråfico pirâmide para outra causa de morte.

2- Faça um gráfico pirâmide para o ano 1990 e 2019 para a causa de morte “Violencia interpessoal e auto infringida”, considerando todos os sexos e os dados do Brasil.

2.6 GRÁFICO COM DOIS EIXOS VERTICAIS

Um gråfico com dois eixos verticais Ê extremamente útil em situaçþes onde queremos mostrar, em um mesmo gråfico, duas variåveis quantitativas que possuem grandezas numÊricas muito diferentes.

Para exemplificar, vamos considerar os dados do Rio de Janeiro, para todas as idades e todos os sexos, com respeito à causa de morte “Violencia interpessoal e auto infringida”. Para isso, vamos construir duas bases de dados: uma para as taxas de mortalidade e a outra para os valores absolutos de óbitos:

DadosF <- Dados2%>%filter(CAUSA=="Violencia interpessoal e auto infringida",
                          FAIXA_ETARIA=="Todas",GENERO=="Total",
                          LOCAL=="Rio de Janeiro",METRICA=="Taxa")%>%select(ANO,VALOR)

DadosG <- Dados2%>%filter(CAUSA=="Violencia interpessoal e auto infringida",
                          FAIXA_ETARIA=="Todas",GENERO=="Total",
                          LOCAL=="Rio de Janeiro",METRICA=="Numero")%>%select(ANO,VALOR)

Inicialmente, vamos fazer um grĂĄfico de barras para a taxa de mortalidade:

ggplot()+
  geom_col(data=DadosF,mapping=aes(x=ANO,y=VALOR),fill="orange")+
  scale_x_continuous(breaks=c(1990:2019))+
  theme_bw()+
  xlab(" ")+
  ylab("Taxa de mortalidade por 100 mil habitantes")

Com algumas estratĂŠgias, conseguimos acrescentar uma linha para o nĂşmero de Ăłbitos:

coef = 200 # Um nĂşmero esperto para direcionar ambos os grĂĄficos

ggplot()+
  geom_col(data=DadosF,mapping=aes(x=ANO,y=VALOR),fill="orange")+
  geom_line(data=DadosG,mapping=aes(x=ANO,y=VALOR/200),color="red",size=2)+
  scale_x_continuous(breaks=c(1990:2019))+
  ylab("Taxa de mortalidade por 100 mil habitantes")+
  scale_y_continuous(sec.axis = sec_axis(~.*200, name = "NĂşmero absoluto de Ăłbitos"))+
  theme_bw()+
  xlab(" ")

2.6.1 EXERCÍCIOS

1- Repita o grĂĄfico para Minas Gerais

2.7 GRÁFICOS DE DISPERSÃO

O gråfico de dispersão Ê uma ferramenta gråfica amplamente utilizada em estatística e outras åreas do conhecimento para visualizar a relação entre duas variåveis quantitativas. Ao plotar os pontos no gråfico, Ê possível detectar padrþes e tendências nos dados e identificar possíveis correlaçþes entre as variåveis.

Essa visualização pode fornecer insights importantes para anålise de dados e tomada de decisão em diversas åreas, desde a pesquisa de mercado atÊ a anålise de dados científicos.

Hoje, vamos ilustrar este grĂĄfico com os dados do GBD cruzando duas variĂĄveis para os estados brasileiros:

  • Percentual de mudança da taxa de mortalidade por doenças crĂ´nicas nĂŁo transmissĂ­veis entre 1990 e 2019.

  • Índice demogrĂĄfico SDI obtido em 2019.

Inicialmente, vamos ler a base:

Dados3<-read_csv("Dados3.csv")

O grĂĄfico de dispersĂŁo entĂŁo ĂŠ feito com o seguinte comando:

ggplot(Dados3, aes(x =SDI_2019, y = PC)) +
  geom_point() +
  theme_bw() +
  theme(text=element_text(size=15))+
  xlab("SDI 2019")+
  ylab("Percentual de mudança")

Seria de bastante utilidade marcar todos os pontos com os respectivos estados brasileiros. Isso pode ser feito com a função geom_label_repel() do pacote ggrepel com os seguintes comandos:

ggplot(Dados3, aes(x =SDI_2019, y = PC, label=LOCAL)) +
  geom_point() +
  theme_bw() +
  geom_label_repel()+
  theme(text=element_text(size=15))+
  xlab("SDI 2019")+
  ylab("Percentual de mudança")

2.8 MAPAS

Um shapefile Ê um formato de armazenamento de dados para armazenar a posição, forma e atributos de feiçþes geogråficas. O geobr Ê um pacote do R que permite que os usuårios acessem facilmente os shapefiles do Instituto Brasileiro de Geografia e Estatística (IBGE) e outros conjuntos oficiais de dados espaciais do Brasil.

O pacote inclui uma ampla variedade de conjuntos de dados geogrĂĄficos como recursos simples, disponĂ­veis em vĂĄrias escalas geogrĂĄficas e por vĂĄrios anos. O pacote geobr foi desenvolvido por Rafael Henrique Moraes Pereira, pesquisador do Instituto de Pesquisa EconĂ´mica Aplicada (IPEA).

Mais informaçþes sobre o pacote geobr podem ser encontradas no CRAN geobr

2.8.1 Unidades GeogrĂĄficas Brasileiras

Conforme mencionado, o pacote geobr trabalha com diferentes unidades geogråficas. Para cada unidade geogråfica de interesse, o pacote geobr tem uma função diferente, dentre as seguintes:

Cada função acima gera o shapefile de uma unidade geogråfica e todas as funçþes possuem sintaxe similar que podem ser verificadas com maiores detalhes no CRAN geobr.

Para trabalhar e manipular os dados envolvendo diferentes unidades geogrĂĄficas brasileiras ĂŠ extremamente Ăştil codificĂĄ-las em nĂşmeros. Por exemplo:

  • Rio de Janeiro (cidade): 3304557
  • Rio de Janeiro (regiĂŁo geogrĂĄfica imediata): 330001
  • Rio de Janeiro (regiĂŁo geogrĂĄfica intermediĂĄria): 3301
  • Rio de Janeiro (estado): 33

A codificação de cidades e estados pode ser consultada no site IBGE. Jå a codificação de regiþes intermediårias e imediatas no site WIKIPEDIA

A seguir, seguem algumas unidades geogråficas brasileiras e maiores detalhes. Para a visualização dos mapas, utilizamos a função geom_sf do pacote ggplot2:

2.8.1.1 PaĂ­s

Brasil<-read_country(year=2018,simplified = T, showProgress = F)
ggplot()+geom_sf(data=Brasil,fill="#2D3E50", color="orange")+ 
  theme_bw()+
  theme(axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(), 
        axis.ticks.y=element_blank())

2.8.1.2 RegiĂŁo

Regiao<-read_region(year=2018,simplified = T, showProgress = F)
ggplot()+geom_sf(data=Regiao,fill="#2D3E50", color="orange")+ 
  theme_bw()+
  theme(axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(), 
        axis.ticks.y=element_blank())

2.8.1.3 Estado

Estado<-read_state(code_state="all",year=2018,simplified = T, showProgress = F)
ggplot()+geom_sf(data=Estado,fill="#2D3E50", color="orange")+ 
  theme_bw()+
  theme(axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(), 
        axis.ticks.y=element_blank())

EstadoRJ<-read_state(code_state=33,year=2018,simplified = T, showProgress = F)
ggplot()+geom_sf(data=EstadoRJ,fill="#2D3E50", color="orange")+ 
  theme_bw()+
  theme(axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(), 
        axis.ticks.y=element_blank())

2.8.1.4 MunicĂ­pio

Municipio<- read_municipality(code_muni = "all",year=2018,simplified = T, showProgress = F)
ggplot()+geom_sf(data=Municipio,fill="#2D3E50", color="orange")+ 
  theme_bw()+
  theme(axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(), 
        axis.ticks.y=element_blank())

MunicipioRJ<- read_municipality(code_muni = 33,year=2018,simplified = T, showProgress = F)
ggplot()+geom_sf(data=MunicipioRJ,fill="#2D3E50", color="orange")+ 
  theme_bw()+
  theme(axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(), 
        axis.ticks.y=element_blank())

RioDeJaneiro<- read_municipality(code_muni = 3304557,year=2018,simplified = T, showProgress = F)
ggplot()+geom_sf(data=RioDeJaneiro,fill="#2D3E50", color="orange")+ 
  theme_bw()+
  theme(axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(), 
        axis.ticks.y=element_blank())

2.8.1.5 RegiĂľes Imediatas

As regiþes geogråficas imediatas constituem a divisão geogråfica regional do país, segundo a composição elaborada pelo Instituto Brasileiro de Geografia e Estatística (IBGE).

SĂŁo agrupamentos de municĂ­pios que tĂŞm como principal referĂŞncia a rede urbana e possuem um centro urbano local como base, mediante a anĂĄlise do IBGE.

Para sua elaboração, foram levadas em consideração a conexão de cidades próximas atravÊs de relaçþes de dependência e deslocamento da população em busca de bens, prestação de serviços e trabalho.

Foram instituídas em 2017 para a atualização da divisão regional brasileira e correspondem a uma revisão das antigas microrregiþes, que estavam em vigor desde o quadro criado em 1989. Essa configuração deve ser utilizada para fins de planejamento e estimativas

Immediate<- read_immediate_region(code_immediate = "all",year=2020,simplified = T, showProgress = F)
ggplot()+geom_sf(data=Immediate,fill="#2D3E50", color="orange")+ 
  theme_bw()+
  theme(axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(), 
        axis.ticks.y=element_blank())

2.8.1.6 RegiĂľes IntermediĂĄrias

As regiþes geogråficas intermediårias assim como as imediatas tambÊm constituem a divisão geogråfica regional do país, segundo a composição elaborada pelo Instituto Brasileiro de Geografia e Estatística (IBGE).

SĂŁo agrupamentos de regiĂľes imediatas que sĂŁo articuladas atravĂŠs da influĂŞncia de uma metrĂłpole, capital regional ou centro urbano representativo dentro do conjunto.

Foram instituídas em 2017 para a atualização da divisão regional brasileira e correspondem a uma revisão das antigas macrorregiþes, que estavam em vigor desde o quadro criado em 1989. Essa configuração deve ser utilizada para fins de planejamento e estimativas.

Intermediate<- read_intermediate_region(code_intermediate = "all",year=2020,simplified = T, showProgress = F)
ggplot()+geom_sf(data=Intermediate,fill="#2D3E50", color="orange")+ 
  theme_bw()+
  theme(axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(), 
        axis.ticks.y=element_blank())

2.8.1.7 RegiĂľes de SaĂşde

As Regiþes de Saúde são formadas por municípios fronteiriços que compartilham identidades culturais, econômicas e sociais, redes de comunicação e infraestrutura de transportes. A finalidade dessas regiþes Ê integrar a organização, o planejamento e a execução de açþes e serviços de saúde.

Mecanismo interfederativo de gestão da saúde, esses territórios vizinhos, de circulação e vivências em comum entre populaçþes, têm entre seus objetivos a garantia do acesso resolutivo da população à saúde, em tempo oportuno e com qualidade, incluindo açþes e serviços de promoção, proteção e recuperação, organizados em Redes de Atenção à Saúde (RAS), assegurando a integralidade do SUS.

Dependendo do fenĂ´meno de interesse a ser estudado, as regiĂľes de saĂşde podem ser utilizadas em duas versĂľes como pode ser visto na sequĂŞncia:

MicroSaude<- read_health_region(macro=F,year=2013,simplified = T, showProgress = F)
ggplot()+geom_sf(data=MicroSaude,fill="#2D3E50", color="orange")+ 
  theme_bw()+
  theme(axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(), 
        axis.ticks.y=element_blank())

MacroSaude<- read_health_region(macro=T,year=2013,simplified = T, showProgress = F)
ggplot()+geom_sf(data=MacroSaude,fill="#2D3E50", color="orange")+ 
  theme_bw()+
  theme(axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(), 
        axis.ticks.y=element_blank())

2.8.1.8 Outras Unidades GeogrĂĄficas

SETORES CENSITÁRIOS DO RIO DE JANEIRO

\[\\[0.1in]\]

REGIÃO SEMIÁRIDA BRASILEIRA

\[\\[0.1in]\]

BIOMAS BRASILEIROS

2.8.2 EXERCÍCIOS

  1. Criar o shapefile dos municĂ­pios de Minas Gerais e representar em um mapa.
  2. Criar o shapefile do municĂ­pio de Belo Horizonte e representar em um mapa.
  3. Criar o shapefile do municĂ­pio de NiterĂłi e representar em um mapa.
  4. Criar o shapefile das regiĂľes intermediĂĄrias de Minas Gerais e representar em um mapa.

2.8.3 REPRESENTAÇÃO DE VARIÁVEIS EM MAPAS

Utilizaremos os dados do GBD das taxas de mortalidade associadas a acidentes envolvendo motociclistas nos municĂ­pios de Minas Gerais e do Rio de Janeiro durante o triĂŞnio 2009-2011.

Para ajudar a categorizar os pontos de corte, precisaremos da seguinte função age.cat:

## Função utilizada para categorizar os pontos de corte
age.cat <- function(x, breaks,
                    sep = "-", above.char = "+",min,max) {
  labs <- c(paste(c(min,breaks)[-(length(breaks)+1)],
                  breaks-0.01,
                  sep = sep),
            paste(breaks[length(breaks)], max, sep = "-"))
  cut(x, breaks = c(min,breaks,Inf),
      right = FALSE, labels = labs)
}

A construção do mapa coroplÊtico considerando percentis como pontos de corte Ê feito a partir do seguinte código

## Leitura dos dados 
Dados_MG <- read.csv("Dados_MG.csv")  
## Pontos de corte
breaks <- round(quantile(Dados_MG$taxa,probs = c(0.05,0.20,0.40,0.60,0.80,0.95)),2)
## Escolha da paleta de cores 
mycolors <- rev(brewer.pal(7, "RdBu"))
## Categorizando os pontos de corte
Dados_MG$Categoria <- age.cat(round(Dados_MG$taxa,2),breaks,min=min(round(Dados_MG$taxa,2)),max=max(round(Dados_MG$taxa,2)))
## Merge do arquivo contendo as taxas com o shapefile
Dados_MG <- merge(MG,Dados_MG,by="code_muni",all.x=T)
## Construção do mapa
ggplot() +  geom_sf(data=Dados_MG,aes(fill=Categoria),colour="black") + 
            theme_bw() +
            scale_fill_manual(values = mycolors,name="Taxa de mortalidade por 100 mil habitantes 2009-2011") +
            theme(axis.title.x=element_blank(),
              axis.text.x=element_blank(),
              axis.ticks.x=element_blank(),
              axis.title.y=element_blank(),
              axis.text.y=element_blank(),
              axis.ticks.y=element_blank(),
              legend.position = "bottom")

2.8.4 EXERCÍCIOS

1- Reproduza o exemplo anterior para os dados dos municipios do Rio de Janeiro com a base Dados_RJ.csv