R para não Programadores – [1] Um Mapa e Dados das Capitais do Brasil – Curso Prático

November 7, 2016 2 comments Posted in R para não Programadores

Esse módulo faz parte de uma série que visa o desenvolvimento de uma pequena aplicação interativa em R/Shiny para exibição de dados de sobre cidades brasileiras.

Se quiser saber mais sobre a nossa proposta veja aqui.

Nesse tópico veremos com usar o pacote Leaflet e exibir um marcador sobre mapa.

Leaflet é uma das mais populares bibliotecas JavaScript para mapas interativos em páginas web e o RStudio desenvolveu um pacote para R que torna todo o seu uso muito fácil mesmo.

Assumindo que você já tem o R e preferencialmente o RStudio instalado. Veja como é fácil produzir um mapa de qualidade em sua aplicação R. Ao final links para download do R e do RStudio,

Primeiro devemos instalar o pacote. Se você é usuário de linha de comando vá de :

Caso seja um dos “meus”, no RStudio:

ou

Aqui o código relativo ao nosso primeiro mapa que mostra a cidade de Niterói, no estado do Rio de Janeiro.

e o resultado já é bem interessante:

Quais são os parâmetros importantes?

em setview ajustamos o centro do mapa e nível de zoom desejado.:

addTiles adiciona uma camada imagem que é composta por “placas” / trechos de imagens desenvolvidos pelo OpenStreetMap. Veremos a seguir que podemos alterar essa camada de informação e obter efeitos interessantes.

e por fim addMarkers cria o marcado e adiciona um popup de identificação do ponto.

Atentar para detalhe do %>% , cuja função é criar uma conexão direta entre os comandos. Implicitamente está informando que o objeto anterior será o input para a próxima instrução que irá por sua vez alterá-lo. Um erro frequente é esquecer ou apagar essa conexão.

Download do R

Download do RStudio

No próximo tópico vamos estender um pouco mais em uma aplicação um pouco mais complexa.

 

2 comments

  1. lianagalvao 7 months ago

    Jkarlos, gostei muito deste post e consegui reproduzi-lo com facilidade, mas quando tentei fazer um outro mapa não obtive o mesmo resultado. Podes me ajudar?

    Escrevi o seguinte script:

    mapa2<-leaflet() %>%
    setView(lng=-8.056544, lat=-34.907366,zoom=10) %>%
    addTiles() %>%
    addMarkers(lng=-8.13979210, lat=-34.90839310, popup=”Recife”)
    mapa2

    O que fiz errado?

    • jkarlos 7 months ago

      Olá Liana,

      fiz umas testes por aqui e parece que as coordenadas estão invertidas, tente

      mapa2<-leaflet() %>%
      setView(lng=-34.881256, lat=-8.054278,zoom=9) %>%
      addTiles() %>%
      addMarkers(lng=-34.881256, lat=-8.054278, popup="Recife")
      mapa2

      Obrigado pela visita 🙂

      João Carlos

Leave a Comment

Related Story
%d bloggers like this: