O Github Pages permite que
você construa websites simples a partir de seu repositório Github. Para
ativar esse recurso, acesse a guia Settings em
https://github.com/SEU_USUÁRIO/ciencia_colab
. Em seguida,
clique no menu Pages na barra de navegação do lado
esquerdo.
No botão abaixo de Source, escolha o Branch main e folder /(root):
Click Save. You should now see that the site is “ready to be published”:
Olhando no menu principal do repositório, você poderá confirmar que o repositório está ativo na forma de website
E também poderá acessar a página no endereço:
https://SEU_USUÁRIO.github.io/ciencia_colab
Repare que o URL é apenas uma reordenação do endereço do repositório no Github:
https://github.com/SEU_USUÁRIO/ciencia_colab
Para ficar mais fácil de encontrarem o website, clique na ícone de engrenagem em frente a palavra About no menu do lado direito e uma janela irá abrir:
O endereço do website irá aparecer em cinza, mas você terá que digitar ou copiar e colar o endereço neste campo. Basta salvar e já poderá ver o endereço na página principal do repositório.
Ao final, você deve ver algo como isso:
O padrão das páginas principais de websites é ter uma página inicial
nomeada como index.html
. Portanto, teremos que renomear o
nosso documento R Markdown. Para podermos alterar as
rotinas e arquivos tendo a possibilidade de testar várias alternativas
sem perder nosso trabalho anterior, vamos usar o comando
branch
para criar uma cópia do repositório onde poderão ser
feitas alterações sem prejudicar o código original.
Nesta próxima etapa, vamos continuar a testar novas ferramentas do
GitHub
e usar comandos para testar novos caminhos sem
alterar o repositório principal (branch
e
merge
).
PS: este tutorial de Git e GitHub foi adaptado do material criado
pelos colegas Thiago
Silveira e Ben
Best.
branch
e merge
Os comandos branch
e merge
são muito úteis
quando queremos testar diferentes caminhos. Imagine que você quer fazer
uma figura e segue uma linha de raciocínio. Depois de se deparar com o
resultado final, você percebe que poderia seguir um caminho diferente.
Para não perder a primeira versão, que está no ramo
master, você pode criar um branch
, uma
diferente abordagem em paralelo. Abaixo um resumo que que será realizado
nesta seção:
Comando | Ação |
---|---|
branch |
Cria um novo “ramo” em seu repositório |
merge |
Incorporar um ramo criado ao ramo “master” |
O comando git no terminal é git branch
. No RStudio você
pode criar um novo branch
clicando botão como indicado
abaixo.
Depois de criar o novo branch
nomeado
Caminho_2, foram realizadas algumas mudanças na rotina,
fazendo um commit
e push
neste ramo. Depois
disso, será feito um merge
incorporando as modificações ao
ramo principal master. No RStudio é possível somente
criar os ramos pela aba Git, para fazer o
merge
você terá que usar linha de comando no
Terminal. Note que na interface de commit
,
temos sempre que preencher o campo commit message.
Abaixo, em verde, são destacadas as mudanças realizadas, vermelho a
versão anterior.
Para fazer o merge do ramo Caminho_2, primeiro você precisa voltar para o ramo master. Na aba git do RStudio troque de Caminho_2 para master. Depois disso digite os seguintes comandos no Terminal, um de cada vez.
# Fazendo o "merge" de "Caminho_2" ao "master"
git merge Caminho_2
# Fazendo o "push" para o repositório
git push
Você verá na aba Terminal algo semelhante a figura abaixo.
Voltando para o repositório no Github podemos
visualizar a versão atualizada, mais upstream do
repositório no ramo master
.
O pacote leaflet
permite adicionar mapas interativos nos
documentos em html
, permitindo que o usuário possa
investigar com maior detalhe os detalhes plotados no mapa. Abaixo, vamos
criar um mapa utilizando os dados de ocorrência do gênero
Corvus (apenas para mudar do ambiente marinho um pouco). As
etapas de aquisição e filtragem dos dados são as mesmas da atividade 3, então não serão detalhadas
novamente.
library(tidyverse)
library(rgbif)
# ocorrencias
corvus_gbif <- occ_data(scientificName = "Corvus",
hasCoordinate = TRUE,
hasGeospatialIssue = FALSE)
# checar issues
issues_gbif <- corvus_gbif$data$issues %>%
unique() %>%
strsplit(., "[,]") %>%
unlist()
gbif_issues() %>%
data.frame() %>%
filter(code %in% issues_gbif)
## code issue
## 1 cdc CONTINENT_DERIVED_FROM_COORDINATES
## 2 cdround COORDINATE_ROUNDED
## 3 cudc COUNTRY_DERIVED_FROM_COORDINATES
## 4 txmathi TAXON_MATCH_HIGHERRANK
## 5 osiic OCCURRENCE_STATUS_INFERRED_FROM_INDIVIDUAL_COUNT
## description
## 1 The interpreted continent is based on the coordinates, not the verbatim string information.
## 2 Original coordinate modified by rounding to 5 decimals.
## 3 The interpreted country is based on the coordinates, not the verbatim string information.
## 4 Matching to the taxonomic backbone can only be done on a higher rank and not the scientific name.
## 5 Occurrence status was inferred from the individual count value
## type
## 1 occurrence
## 2 occurrence
## 3 occurrence
## 4 occurrence
## 5 occurrence
# selecionar variaveis
corvus <- corvus_gbif$data %>%
dplyr::select(scientificName, decimalLatitude, decimalLongitude) %>%
distinct()
Depois de carregar os dados, basta criar um mapa seguindo a sintaxe
abaixo. Nela, indicamos um data.frame
com dados de
coordenadas geográficas em graus decimais. A função
addTiles
é responsável por indicar o tipo de mapa base
utilizado. Aqui vamos utilizar o fundo padrão, mas para mais opções
acesse este tutorial.
Vamos plotar o mapa e dar uma conferida nas ocorrências.
library(leaflet)
# conferir no mapa
corvus %>%
leaflet() %>%
addTiles() %>%
addMarkers(~decimalLongitude,
~decimalLatitude)
Podemos também dar uma incrementada mudando o tipo de marcador e
incluir diferenças de acordo com os níveis de um fator, neste caso
datasetName
. Também é importante adicionar uma legenda ao
mapa para indicar o significado das cores dos marcadores. Novamente,
acesse o tutorial indicado para aprender como explorar ainda mais os
recursos desta ferramenta.
br>
pal <- colorFactor(palette = "viridis", domain = unique(corvus$scientificName))
corvus %>%
leaflet() %>%
addTiles() %>%
addCircleMarkers(~decimalLongitude,
~decimalLatitude,
radius = 5,
label = ~as.character(scientificName),
color = ~pal(corvus$scientificName),
stroke = FALSE, fillOpacity = 0.5) %>%
addLegend('bottomright',
colors = unique(pal(corvus$scientificName)),
labels = unique(corvus$scientificName),
title = 'Espécie',
opacity = 0.5)
A biblioteca Plotly
cria gráficos interativos
customizáveis dos mais diversos tipos: gráficos de linha, gráficos de
dispersão, gráficos de área, gráficos de barras, boxplot,
histogramas, heatmaps, gráficos 3D (baseados em WebGL) e até
gráficos animados.
A seguir, vamos utilizar um exemplo simples utilizando os mesmos dados dos corvos. Em princípio, vamos plotar os dados de ocorrência e relação à latitude, uma vez que a maioria deles está concentrada no hemisfério norte.
corvus %>%
ggplot(aes(y = decimalLatitude, fill = scientificName)) +
geom_histogram() +
theme_classic() +
labs(y = "latitude", x = 'ocorrências') +
ylim(-50, 70)
Acima observamos que existem poucas ocorrências no hemisfério sul (latitude < 0) e isso dificulta a visualização do restante dos dados. Podemos limitar a escala do eixo para focar na área de maior concentração de dados.
corvus %>%
ggplot(aes(y = decimalLatitude, fill = scientificName)) +
geom_histogram() +
theme_classic() +
labs(y = "latitude", x = 'ocorrências') +
ylim(35, 65)
Uma das vantagens do Plotly
é permitir interagir com os
gráficos e isso inclui selecionar alguns dados, verificar valores
passando a cursor do mouse sobre os elementos gráficos e dar
zoom em partes do gráfico. Veja o exemplo abaixo. Nele é
possível ter uma ideia de todos os valores e investigar os valores na
região com maior concentração de dados.
library(plotly)
cc <- corvus %>%
ggplot(aes(y = decimalLatitude, fill = scientificName)) +
geom_histogram() +
theme_classic() +
labs(y = "latitude", x = 'ocorrências') +
ylim(-50, 70)
ggplotly(cc)
Este foi apenas um exemplo, para mais funções, acesse o tutorial do
Plotly
.
Colabore, compartilhe, e cite as fontes!