ANÁLISE DE DADOS DE ÁREA E PROCESSOS PONTUAIS UTILIZANDO O ÍNDICE DE DESENVOLVIMENTO HUMANO MUNICIPAL E DADOS DE ACIDENTES DE TRÂNSITO NAS BR’S NO ESTADO DA PARAÍBA

Universidade Estadual da Paraíba - UEPB

Disciplina: Estatística Espacial

Professor: Ricardo Alves de Olinda

Aluno: Giullber Valentim da Silva

1 Introdução

  • As análises estatísticas realizadas a partir de mapas temáticos espaciais com base em alguma incidência de taxas, fazem parte da área de estatística espacial e vem sendo bastante utilizada para a observação da evolução e distribuição de eventos que possam ser de interesse de estudo por parte de algum pesquisador.
  • O trabalho em questão visa a aplicação da análise estatística espacial no estado da Paraíba, unidade federativa do Brasil localizada na região Nordeste, com base no IDHM (Índice de Desenvolvimento Humano Municipal), assim também como das mesorregiões do estado a partir de análises de áreas e a utilização dos dados de acidentes com vítimas fatais nas BR’s que cruzam o estado para a análise espacial com base em processos pontuais, verificando quais rodovias possuem uma maior incidência de acidentes fatais registrados no estado em 2018.

2 Metodos e Materiais

2.1 Importação dos shape files e dados utilizados

## Shape municípios
shape_pb = readShapePoly('t//PB_Municipios_2021.shp', IDvar = "NM_MUN")

## Shape mesorregiões
shape_pb_meso = readShapePoly("PB meso//PB_Mesorregioes_2021.shp")

## Dados do IDHM
dados_ind = read_xlsx('banco de dados//mun_idhm.xlsx')

## Dados de acidentes
dados <- read_excel("banco de dados//dadosdetran2018.xlsx")

     Em uma análise por meio de dados de área as regiões analisadas estarão geograficamente bem definidas, uma região específica de interesse será particionada em \(n\) áreas, com cada uma contendo uma observação aleatória denominado por \(Y_i\).

2.2 Matriz de Vizinhança

     Sendo as áreas da região de estudo denotada por \(A_i\), temos:

\[\hbox{}w_{ij} = \left\{ \begin{array}{rll} 0, & se \ as \ áreas \ A_i \neq A_j \ e \ não \ vizinhas;\\ 1, & se \ as \ áreas \ A_i \neq A_j \ e \ forem \ vizinhas; \end{array}\right.\]

     A partir do critério de contiguidade (Queen) teremos a seguinte relação de vizinhança entre as áreas do estado da Paraíba:

n_obs <- length(shape_pb)
PB.nb <- poly2nb(shape_pb, queen=T)
coords_PB <- coordinates(shape_pb)
vizinhanca_2 = nb2listw(PB.nb, style="W",zero.policy = F)

## Gráfico da relação de municipios
par(mar=c(0,0,2,0))
plot(shape_pb, border="grey",
     main = "Vizinhança Queen")
plot(PB.nb, coords_PB, add=TRUE, col="red")

2.3 Índice de Moran

     O índice de Moran global representará um coeficiente de correlação de acordo com o relacionamento entre uma variável espacial quanto ao seu valor médio (LUZARDO, CASTAÑEDA FILHO e RUBIM, 2017), empregando a matriz de vizinhança de primeira ordem e usando a seguinte expressão para o cálculo:

Fórmula matemática para o Índice de Moran Global.

     Onde:

  • \(n\) é o número de áreas;
  • \(Z_i\) é o valor do atributo considerado na área \(i\);
  • \(\mu_z\) é o valor médio do atributo na região de estudo;
  • \(w_{ij}\) é o elemento \(ij\) da matriz de vizinhança normalizada;

     Podemos submeter o índice de Moran global a um teste de hipótese onde iremos verificar a existência de autocorrelação espacial utilizando como hipóteses:

  • \(H_0\): Não há evidências de auto correlação espacial;
  • \(H_1\): Existem evidências de autocorrelação espacial;

     A rejeição da hipótese nula se dará quando o p-valor for menor que um \(\alpha\) já estabelecido, nível de significância que por convensão utilizamos \(\alpha = 0.05 = 5\%\).

     Para o índide de Moran Local, que nos retornará valores específicos para cada área da região, usaremos a notação \(I_i\) que será calculado a partir da seguinte fórmula:

Fórmula matemática para o Índice de Moran Local.

2.4 Lisa MAP

     Demonstra a associação local dos municípios a partir dos valores de \(I_i\) (Índice de Moran Local) em um mapa com base no seu nível de significância ou com base em clusters definidos de acordo com a relação dos municípios com seus vizinhos locais.

     Para LISA Cluster MAP:

  • AA (alto-alto): valor acima da média para a área e seus vizinhos;
  • BB (baixo-baixo): valor abaixo da média para a área e seus vizinhos;
  • AB (alto-baixo): área com um valor acima da média, mas com vizinhos com valores abaixo da média;
  • BA (baixo-alto): área com valor abaixo da média, mas com vizinhos com valores acima da média;

     Para o LISA Significance MAP:

  • 0.01;
  • 0.05;
  • 0.001;
  • N.sgf quando o \(p-valor = 0\);

     De maneira geral, a utilização do LISA map servirá para localizar os municípios que contribuem de fortemente para a autocorrelação espacial.

2.5 Dados Utilizados

     IDHM - Índice de Desenvolvimento Humano Municipal com base no censo de 2010, composto por:

  • IDHM Longevidade: resultado medido pela expectativa de vida ao nascer;
  • IDHM Educação: medido por dois indicadores: Escolaridade da população adulta e pelo fluxo escolar da população jovem;
  • IDHM Renda: medido pela renda média dos residentes de um determinado município;

     Assumirá valores variando de 0 a 1, assumindo a seguinte classificação:

  • De 0 a 0.499: Muito Baixo;
  • De 0.5 a 0.599: Baixo;
  • De 0.6 a 0.699: Médio;
  • De 0.7 a 0.799: Alto;
  • De 0.8 a 1: Muito Alto;

     Para a apresentação do processo pontual, foi utilizado o banco de dados de acidentes com vítimas fatais na rodovias federais no estado da Paraíba no ano de 2018.

2.6 Mapa municípios

par(mar=c(1,0,1,0))

plot(shape_pb, lwd = 1.5,
     main = "Visualização espacial dos 223 municípios do estado da Paraíba.")

scalebar(100, xy=c(-36.00096, -8.2), 
         type="bar", below="km",
         cex=1, lonlat=T,divs=4)
compassRose(-37.73203, -8.065287, cex=0.8)

2.7 Mapa mesorregiões

CORES_meso <- c("#e3a72f","#d54b1a","#988864","#54bf46")

legtext = shape_pb_meso$NM_MESO

par(mar=c(1,0,2,0))

plot(shape_pb_meso, col=CORES_meso, lwd = 2,
     main = "Mesorregiões do estado da Paraíba")
legend("bottomright", fill=CORES_meso, 
       legend=legtext, 
       title = "Mesorregiões", title.font = 2,
       bty="n",cex=0.9,
       border = "black")
scalebar(100, xy=c(-35.89051, -6.280096), 
         type="bar", below="km",
         cex=0.8, lonlat=T,divs=4)

compassRose(-37.73203, -8.065287, cex=0.7)
plot(shape_pb,add = TRUE,border = "black", 
     lwd = 0.1,lty = 2, axes = TRUE, las = 1)

3 Realizando a concatenação dos dados

3.1 Match

## Verificando se as informações estão dando match
ind <- match(shape_pb@data$NM_MUN, dados_ind$Município)
ind
##   [1]   1   2   3   4   5   6  NA   8   9  10  11  12  13  14  NA  16  17  18
##  [19]  NA  20  21  NA  NA  NA  25  26  NA  28  29  30  31  32  NA  34  35  NA
##  [37]  NA  38  39  40  NA  NA  NA  44  45  46  47  48  49  50  51  52  53  54
##  [55]  55  NA  57  58  59  60  61  62  63  NA  65  66  NA  68  NA  70  71  72
##  [73]  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90
##  [91]  91  92  93  94  95  96  97  NA  99 100 101  NA 103 104 105 106 107  NA
## [109] 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
## [127] 127 128 129  NA 131 132 133 134 135 136 137 138  NA 140 141 142 143 144
## [145] 145 146 147 148 149  NA 151 152 153 154 155  NA 157 158  NA  NA  NA  NA
## [163] 163 164  NA 166 167 168 169 170 171 172  NA  NA 175 176 177 178  NA 180
## [181]  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA 194  NA  NA  NA  NA
## [199] 199 200  NA 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216
## [217] 217 218 219 220 221 222 223
sum(is.na(ind))
## [1] 50
## Modificações se necessárias
# Verificação lado a lado para encontrar possíveis inconsistências
tabela = data.frame(shape_pb$NM_MUN,dados_ind$Município)

# Mudando a estrutura do nome usando o pacote stringr:
shape_pb$NM_MUN = str_to_title(shape_pb$NM_MUN)

# ALterando o nome da cidade:
shape_pb$NM_MUN[156] = "Quixabá"
ind <- match(shape_pb@data$NM_MUN, dados_ind$Município)
ind
##   [1]   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18
##  [19]  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36
##  [37]  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54
##  [55]  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72
##  [73]  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90
##  [91]  91  92  93  94  95  96  97  98  99 100 101 102 103 104 105 106 107 108
## [109] 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
## [127] 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144
## [145] 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162
## [163] 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180
## [181] 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198
## [199] 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216
## [217] 217 218 219 220 221 222 223
sum(is.na(ind))
## [1] 0

3.2 Concatenando

# transformando a tabela com IDHM em dataFrame
dados_ind = as.data.frame(dados_ind)

# Realizando a concatenação
dados_ind <- dados_ind[ind,]
row.names(dados_ind) <- shape_pb$NM_MUN
row.names(dados_ind) = row.names(shape_pb)

shape_pb <- spCbind(shape_pb, dados_ind)

names(shape_pb)
## [1] "CD_MUN"    "NM_MUN"    "SIGLA"     "AREA_KM2"  "Município" "IDHM"     
## [7] "GINI"      "THEIL"

4 Análise descritiva

dads_descr = as.tibble(shape_pb)
## Warning: `as.tibble()` was deprecated in tibble 2.0.0.
## ℹ Please use `as_tibble()` instead.
## ℹ The signature and semantics have changed, see `?as_tibble`.
## estatisticas
idhm = dads_descr %>% summarise(Indice = "IDHM",
                                Minimo = min(IDHM),
                                Maximo = max(IDHM),
                                Media = mean(IDHM),
                                Mediana = median(IDHM))
kable(idhm,align = "c",
      caption = "Estatísticas descritivas dos índices de resumo populacional dosmunicípios do estado da Paraíba com base no censo de 2010
")
Estatísticas descritivas dos índices de resumo populacional dosmunicípios do estado da Paraíba com base no censo de 2010
Indice Minimo Maximo Media Mediana
IDHM 0.513 0.763 0.5876547 0.583

4.1 Histograma

hist(dads_descr$IDHM, xlab = paste0(names(dads_descr[2])),
     col = "#27727b", lwd = 2,border="white", 
     main = "Histograma do IDHM do estado da Paraíba com base no censo de 2010",
     panel.first = grid(NA,10, lwd = 1, lty = 1),
     xlim = c(0.5,0.8), ylim = c(0,60))

abline(v=mean(dads_descr$IDHM), col="red", lwd=2)
abline(v=median(dads_descr$IDHM), col="#f1db42", lwd = 3, lty = 2)

legend("right", legend =c("Média","Mediana"),
       col=c('red',"#f1db42"),lty = c(1,2),lwd=c(2,3), 
       cex =1.2, title = "Legenda", title.font = 2)

5 Mapa IDHM

par(mar=c(1,0,1,0))

## Definindo os intevarlos dos quantis e cores associados
INT <- classIntervals(shape_pb$IDHM, style="fixed", 
                      fixedBreaks=c(0,0.500,0.600,0.700,0.800,1))
CORES1 <- (c('red',"#964b00",'lightgrey','green2',"green4"))
COL1 <-  findColours(INT, CORES1)

## plot's
plot(shape_pb, col=COL1,
     main ="IDHM do estado da Paraíba com base no censo de 2010")
plot(shape_pb_meso, add=TRUE,lwd=2)

## Legenda, título e mais informações
TB1 <- attr(COL1, "table")
names(TB1)= c('Muito Baixo','Baixo','Médio','Alto','Muito Alto')
legtext <- paste(names(TB1))

legend(-35.54598, -7.67881, fill=attr(COL1, "palette"), legend=legtext, 
       bty="n",cex=1, title='Classificação', title.font = 2)

scalebar(100, xy=c(-36.5, -8.1), 
         type="bar", below="km",
         cex=0.8, lonlat=T,divs=4)
compassRose(-37.73203, -8.065287, cex=0.9)

6 Quantitativo IDHM

Muito_Baixo = dads_descr %>% select(NM_MUN,IDHM)%>% 
  filter(IDHM < 0.5) %>% 
  summarise(Muito_Baixo = n())
Baixo = dads_descr %>% select(NM_MUN,IDHM)%>% 
  filter(IDHM >= 0.5) %>% filter(IDHM < 0.6) %>% 
  summarise(Muito_Baixo = n())
Medio = dads_descr %>% select(NM_MUN,IDHM)%>% 
  filter(IDHM >= 0.6 ) %>% filter(IDHM < 0.7) %>% 
  summarise(Medio = n())
Alto = dads_descr %>% select(NM_MUN,IDHM)%>% 
  filter(IDHM >= 0.7) %>% filter( IDHM < 0.8) %>% 
  summarise(Alto = n())
Muito_Alto = dads_descr %>% select(NM_MUN,IDHM)%>% 
  filter(IDHM >= 0.8) %>% 
  summarise(Muito_Alto = n())

totalis = rbind(Muito_Baixo$Muito_Baixo,
                Baixo$Muito_Baixo,
                Medio$Medio,
                Alto$Alto,
                Muito_Alto$Muito_Alto)
nomes = c("Muito Baixo","Baixo","Médio","Alto","Muito Alto")
totalis = cbind(`Classificação` = nomes, 
                Quantidade = totalis[,1],
                `Proporção` = paste0(round(totalis[,1] / sum(totalis[,1]),4)*100,"%"))

totalis = as.tibble(totalis)
kable(totalis, align = "c",
      caption = "Quantitativos dos municípios do estado da Paraíba 
com base em sua classificação do IDHM.
")
Quantitativos dos municípios do estado da Paraíba com base em sua classificação do IDHM.
Classificação Quantidade Proporção
Muito Baixo 0 0%
Baixo 152 68.16%
Médio 66 29.6%
Alto 5 2.24%
Muito Alto 0 0%

7 Os 10 maiores e menores IDHM

par(mar=c(1,0,2,0))
plot(shape_pb, lwd = 0.1,col = "lightgray",
     main ="Os 10 IDHM mais baixos e mais altos do estado da Paraíba
 com base no censo de 2010")
plot(shape_pb_meso,add=TRUE,lwd=2.5)

mun<- shape_pb[shape_pb$IDHM <= 0.53, ]
plot(mun,col="red3",add=TRUE)

mun2<- shape_pb[shape_pb$IDHM >= 0.649, ]
plot(mun2,col="green3",add=TRUE)

scalebar(100, xy=c(-35.89051, -6.280096), 
         type="bar", below="km",
         cex=0.8, lonlat=T,divs=4)

compassRose(-37.73203, -8.065287, cex=0.8)

legtext = c("10 mais altos","10 mais baixos")
legend("bottomright", fill=c("green3","red3"), 
       legend=legtext, 
       bty="n",cex=1, title='Classificação', title.font = 2)

     Onde temos:

menores = dads_descr[dads_descr$IDHM <= 0.53,] %>% 
  dplyr::select(NM_MUN,IDHM) %>% arrange(IDHM)
maiores = dads_descr[dads_descr$IDHM  >= 0.649,]%>% 
  dplyr::select(NM_MUN,IDHM) %>% arrange(desc(IDHM))
indice = seq(1,10)

menores_tab =cbind(`Posição` = paste0(indice,"º"), 
                   `Município` = menores$NM_MUN, 
                   IDHM = menores$IDHM)

maiores_tab = cbind(`Posição` = paste0(indice,"º"), 
                   `Município` = maiores$NM_MUN[1:10], 
                   IDHM = maiores$IDHM[1:10])

kable(menores_tab, 
      caption = "Os 10 municípios com o IDHM mais baixos.")
Os 10 municípios com o IDHM mais baixos.
Posição Município IDHM
Gado Bravo 0.513
Casserengue 0.514
Damião 0.521
Cacimbas 0.523
Cuité De Mamanguape 0.524
Poço Dantas 0.525
Santa Cecília 0.525
Curral De Cima 0.529
Marcação 0.529
10º São José Da Lagoa Tapada 0.53
kable(maiores_tab, 
      caption = "Os 10 municípios com o IDHM mais altos")
Os 10 municípios com o IDHM mais altos
Posição Município IDHM
João Pessoa 0.763
Cabedelo 0.748
Campina Grande 0.72
Várzea 0.707
Patos 0.701
Santa Luzia 0.682
Cajazeiras 0.679
Guarabira 0.673
Sousa 0.668
10º Bayeux 0.649

8 Matriz de Vizinhança

n_obs <- length(shape_pb)
PB.nb <- poly2nb(shape_pb, queen=T)
coords_PB <- coordinates(shape_pb)
vizinhanca_2 = nb2listw(PB.nb, style="W",zero.policy = F)

9 Índice de Moran

9.1 Índice de Moran Global

(Mglobal_idhm <- moran.test(shape_pb$IDHM, vizinhanca_2))
## 
##  Moran I test under randomisation
## 
## data:  shape_pb$IDHM  
## weights: vizinhanca_2    
## 
## Moran I statistic standard deviate = 8.0641, p-value = 3.689e-16
## alternative hypothesis: greater
## sample estimates:
## Moran I statistic       Expectation          Variance 
##       0.332983019      -0.004504505       0.001751474

9.2 Índice de Moran Local

shape_PB.mloc_IDHM <- localmoran(shape_pb$IDHM, 
                                  nb2listw(PB.nb),alternative="two.sided")

9.2.1 Diagrama de Moran

scat_plot_idhm<- moran.plot(shape_pb$IDHM, vizinhanca_2, 
                            labels=as.character(shape_pb$NM_MUN), 
                            xlab="IDHM - 2010", 
                            ylab="Spatially Lag IDHM - 2010",
                            xlim = c(0.4,0.8),
                            main ="Diagrama de Moran")

10 LISA map

par(mfrow = c(2,2))

## Lisa CLUSTER
list_w <- vizinhanca_2
Sd_1 <- (shape_pb$IDHM) - mean(shape_pb$IDHM)
mI_1 <- shape_PB.mloc_IDHM[, 1]
C_mI <- mI_1 - mean(mI_1) 
quadrant <- vector(mode = "numeric", length = nrow(shape_PB.mloc_IDHM))
quadrant[Sd_1 > 0 & mI_1 > 0] <- 1
quadrant[Sd_1 < 0 & mI_1 > 0] <- 2
quadrant[Sd_1 > 0 & mI_1 < 0] <- 3
quadrant[Sd_1 < 0 & mI_1 < 0] <- 4
signif <- 0.05

quadrant[shape_PB.mloc_IDHM[, 5] > signif] <- 5

colors <- c("red", "blue", "lightpink", "skyblue2", "white")

par(mar=c(0,0,0,0))
plot(shape_pb, col = colors[quadrant])
plot(shape_pb_meso, add =TRUE, lwd = 2)

par(mar=c(1,2,3,2))
barplot(0,yaxt="n", xaxt="n", xlab = NA, ylab = NA,
        main = "Legenda LISA Cluster Map")
legend("center", 
       legend = c("alto-alto","baixo-baixo", "alto-baixo", "baixo-alto","Não Sig."), 
       fill = colors,  cex = 1.4, y.intersp = 1, x.intersp = 1)

## Lisa SIGNIFICANCE
LISA_idhm <- classIntervals(shape_PB.mloc_IDHM[,5], style="fixed",
                            intervalClosure = c( "right"),
                            fixedBreaks=c(0, 0.001, 0.01, 0.05, by=1))

colors <- c("red", "blue", "lightpink", "skyblue2", "white")
COL_Lisa_idhm <- findColours(LISA_idhm, colors)

par(mar=c(1,2,3,2))
barplot(0,yaxt="n", xaxt="n", xlab = NA, ylab = NA,
        main = "Legenda LISA Siginificance Map")
legend("center", fill=attr(COL_Lisa_idhm, "palette"), 
       legend=c("0.1%", "1.0%", "5.0%", "N.sgf"), cex=1.4)

par(mar=c(0,0,0,0))
plot(shape_pb, col=COL_Lisa_idhm)
plot(shape_pb_meso,add=TRUE,lwd=2)

11 Análise de processos pontuais

11.1 Organizando

## Construindo um novo conjunto de dados
newdata = dados[dados$uf=="PB", c(26,27,6,19)]

## Matriz de coordenadas
xy_vetor <- newdata[,c("longitude","latitude")]
xy_vetor$longitude <- as.numeric(xy_vetor$longitude)
xy_vetor$latitude <- as.numeric(xy_vetor$latitude)
head(xy_vetor)
## # A tibble: 6 × 2
##   longitude latitude
##       <dbl>    <dbl>
## 1     -35.1    -6.52
## 2     -35.1    -6.48
## 3     -35.1    -6.54
## 4     -35.1    -6.56
## 5     -35.1    -6.56
## 6     -35.1    -6.57
## Projection: SAS_1969_towgs84_North_Campina
proj <- CRS("+proj=longlat +datum=WGS84 +no_defs")


sp.points <- SpatialPointsDataFrame(coords=xy_vetor,data=newdata, 
                                    proj4string=proj)

11.2 Descritiva

dercr_pont = dados[dados$uf=="PB",] %>% 
  dplyr::select(br, mortos) %>% 
  group_by(br) %>% 
  summarise(Acidentes = n(),
            `Nº de Fatalidades` = sum(mortos),
            `Proporção`= paste0(round(`Nº de Fatalidades`/133,4)*100,"%")) %>% rename(BR = br)

kable(dercr_pont, align = "c",
      caption = "Quantitativos de acidentes e fatalidades registrados 
nas BR’s no estado da Paraíba em 2018")
Quantitativos de acidentes e fatalidades registrados nas BR’s no estado da Paraíba em 2018
BR Acidentes Nº de Fatalidades Proporção
101 402 15 11.28%
104 94 19 14.29%
110 5 2 1.5%
116 5 0 0%
230 994 72 54.14%
361 35 14 10.53%
405 13 3 2.26%
408 1 0 0%
412 24 7 5.26%
426 1 0 0%
427 9 1 0.75%
NA 3 0 0%

11.3 Mapas

plot(sp.points, pch=16, cex=.5, axes=T,cex.axis=.8, 
     col = "red4")
plot(shape_pb,col = "lightgrey",add =T)
plot(sp.points, pch=16, cex=.5, axes=T,cex.axis=.8, 
     col = "red4",add = T)

title("Acidentes registrados nas BR's do estado da Paraíba em 2018.")

###
sp.points$br = as.character(sp.points$br)
br = unique(sp.points$br)

newdata_2 = newdata %>% filter(mortos >0)
xy_vetor <- newdata_2[,c("longitude","latitude")]
xy_vetor$longitude <- as.numeric(xy_vetor$longitude)
xy_vetor$latitude <- as.numeric(xy_vetor$latitude)
sp.points_2 <- SpatialPointsDataFrame(coords=xy_vetor,data=newdata_2, 
                                    proj4string=proj)

CORES1 <- brewer.pal(5, "Reds")
CORES1[1:2]= c("blue3","yellow")

te = tibble()
par(mar=c(1,0,2,0))
plot(shape_pb,col = "lightgrey",
     main ="Acidentes com vítimas fatais por BR's no estado da Paraíba em 2018")

for (i in seq(nrow(dercr_pont))) {
  if (br[i] == "230") {
    cor = CORES1[5]
    plot(sp.points[sp.points$br==paste0(br[i]),], pch=16, cex=.5, axes=T,cex.axis=.8, 
         col = paste0(cor),add =T)
  }else if(br[i] == "104") {
    cor = CORES1[4]
    plot(sp.points[sp.points$br==paste0(br[i]),], pch=16, cex=.5, axes=T,cex.axis=.8, 
         col = paste0(cor),add =T)
  }else if(br[i] == "101") {
    cor = CORES1[3]
    plot(sp.points[sp.points$br==paste0(br[i]),], pch=16, cex=.5, axes=T,cex.axis=.8, 
         col = paste0(cor),add =T)
  }else if(br[i] == "361") {
    cor = CORES1[2]
    plot(sp.points[sp.points$br==paste0(br[i]),], pch=16, cex=.5, axes=T,cex.axis=.8, 
         col = paste0(cor),add =T)
  }else{
    cor = CORES1[1]
    plot(sp.points[sp.points$br==paste0(br[i]),], pch=16, cex=.5, axes=T,cex.axis=.8, 
         col = paste0(cor),add =T)
  }
  
}

plot(sp.points_2, pch=18, cex=1.2, axes=T,cex.axis=.8, col = "black", add = T)

legtext = c("BR 230","BR 104","BR 101","BR 361","Demais BR's","Acid. Fatais")

legend("bottomright", legend=legtext,cex=0.8, title='Classificação',
       title.font = 2,col =c(rev(CORES1),"black"), 
       pch = c(16,16,16,16,16,18), pt.cex = 1.4)

scalebar(100, xy=c(-36.5, -8.1), 
         type="bar", below="km",
         cex=0.6, lonlat=T,divs=4)
compassRose(-37.73203, -8.065287, cex=0.8)

12 Conclusão

  • As análises iniciais demonstraram uma quantidade bastante significativa de municípios com IDHM classificado como baixos, cerca de 68.16%;

  • A tendência é que para o próximo censo os dados demonstrem uma queda de municípios com índices baixos e uma concentração maior de municípios classificados com um IDHM médio e alto;

  • Pelo índice de Moran verificamos a existência de correlação espacial dos municípios com seus vizinhos pelo IDHM, o que ficou evidenciado nos dois mapas do LISA map;

  • Já as análises realizadas com os dados de acidentes com vítimas fatais no estado, todos registrados em 2018, podemos verificar que as rodovias federais BR 230, BR 104, BR 101 e a BR 361 foram a que obtiveram proporções acima dos 10% do total de vítimas fatais;

13 Referências

ATLAS DO DESENVOLVIMENTO HUMANO NO BRASIL. RIO DE JANEIRO, P. I. F. J. P. Atlas Brasil. AtlasBR: Consulta. Disponivel em: http://www.atlasbrasil.org.br/consulta. Acesso em: 03 Out. 2022. Base de dados IDHM 2010.

BLANFORD, J. et al. Project 4: Local Indicators of Spatial Association. PennState: College of Earth and Mineral Sciences. Disponivel em: https://www.e-education.psu.edu/geog586/node/673. Acesso em: 02 Nov. 2022.

CÂMARA, G. E. A. Análise espacial de áreas. Análise espacial de dados geográficos, Brasília: Embrapa, 2004. p.157-182.

DOS SANTOS, A. E.; RODRIGUES, A. L.; LOPES, D. L. Aplicações de estimadores bayesianos empíricos para análise espacial de taxas de mortalidade. GeoInfo, 2005. p.300-309.

IBGE. Instituto Brasileiro de Geografia e Estatística. IBGE: Malha municipal, 2021. Disponivel em: https://www.ibge.gov.br/geociencias/organizacao-do-territorio/malhas-territoriais/15774-malhas.html?=&t=acesso-ao-produto. Acesso em: 03 Out. 2022. Dados vetoriais.