A Análise de Aplicação de Dados Climáticos (ACD-App) foi desenvolvida sob a iniciativa SASSCAL (http://www.sasscal.org) através da Climate Task Gerenciamento histórico e contínuo de dados climáticos para facilitar a visualização de dados climáticos Nos serviços meteorológicos de Angola, Botswana e Zâmbia.
A primeira abordagem foi permitir a interação com dados climáticos armazenados em CLIMSOFT (http://www.climsoft.org), um Sistema de Gerenciamento de Dados Climáticos (CDMS) desenvolvido na África e instalado em todos os serviços meteorológicos do paises do SASSCAL. Este aplicativo foi melhorado ao longo dos anos para que ele também pode ser usado para interagir com dados climáticos armazenados em arquivos crie vários produtos climáticos.
A App fornece recursos específicos, dependendo da fonte de dados com a qual o usuário está trabalhando (CLIMSOFT ou um arquivo local)
A ferramenta foi desenvolvida em Shiny, um pacote open source R que fornece uma estrutura web poderosa para a construção de aplicações web usando R (https://shiny.rstudio.com/). Shiny ajuda a transformar análises de dados em aplicações web interativas sem exigir HTML, CSS ou JavaScript (RStudio, 2017)
Este manual fornecerá uma visão geral do aplicativo, explicando como instalá-lo, como executá-lo e como usá-lo.
O software necessário para a instalação do aplicativo é:
Além deste software, o aplicativo também requer programas adicionais para estar totalmente operacional:
.pdf
corretamente.png
de forma adequada.Se esses programas não estiverem disponíveis no localhost, o aplicativo os instalará automaticamente. A tabela a seguir mostra as versões padrão que o aplicativo irá instalar, bem como os links para os arquivos de download. O usuário pode instalar uma versão posterior de cada software a qualquer momento.
Programa | Versão padrão | Link para downloader |
---|---|---|
MikTeX | V2.9.6361-x64 | https://miktex.org/download |
Phantomjs | V2.1.1 | https://bitbucket.org/ariya/phantomjs/downloads |
Pandoc | V1.19.2.1 | http://pandoc.org/installing.html |
O ACD-App requer um número de R-pacotes para funcionar corretamente. O pacote é a unidade fundamental do código compartilhável em R. Um pacote agrega código, dados, documentação, etc. e é fácil de compartilhar com outros (Wickham, 2017). A maioria dos pacotes necesários está disponível on-line e serán instalados automaticamente pela App.
## caTools
## cluster
## data.table
## DBI
## downloader
## DT
## dygraphs
## ggvis
## htmltools
## htmlwidgets
## installr
## leaflet
## mapdata
## openair
## plyr
## R.utils
## randomNames
## RCurl
## reshape2
## rhandsontable
## RJSONIO
## rmarkdown
## RMySQL
## RODBC
## rprojroot
## rtf
## shiny
## shinyBS
## tcltk
## uuid
## webshot
## XML
## xtable
## zoo
No entanto, existem poucos pacotes desenvolvidos especificamente pela SASSCAL que não estão disponíveis na Internet, mas são exigidos pela App. Esses pacotes são incluídos por padrão na pasta ACD-App, para que a App possa ter acesso a eles. Esses pacotes são:
## climssc
## data.from.climsoft.db
## get.plots.from.ftp
Certos pacotes são necessários em uma versão específica, ou não são facilmente descarregáveis da Internet. Esses pacotes são incluídos por padrão no ACD-App
para que o aplicativo não precise baixar-os da Internet:
## lubridate rlang knitr
Pacote lubridate
(versão requerida: v1.5.6.
). Ele é usado para manipular facilmente datas e horas, é um caso especial, uma vez que a Aplicação requer uma versão específica (v1.5.6). O pacote pode ser baixado da Internet, mas as versões mais recentes não são compatíveis com o aplicativo ACD.
Pacote knitr
(versão requerida: v1.14
). É exigido pelo pacote RMarkdown
para criar os arquivos de documentação corretamente. O pacote pode ser baixado da Internet, mas as versões mais recentes não são compatíveis com o RMarkdown
.
Pacote rlang
(versão requerida: v.0.1.1
). É exigido por pacotes diferentes, mas no repositório R está disponível apenas no formulário source
. Portanto, o aplicativo não poderá baixar o arquivo win.binary
da Internet.
Os pacotes são salvos no seguinte caminho:
## ACD_standalone/ACD_App/www/R_pkgs/win.binary
O Aplicativo é armazenado como um arquivo .zip
para reduzir o tamanho dele. Existem dois arquivos .zip
disponíveis:
ACD_compact_small.zip
(cerca de 12 Mb): Contém as informações mínimas para instalar a aplicação. O usuário precisará de conexão à Internet para concluir a instalação, já que a App terá que baixar os R-Packages de um repositório R-CRAN (normalmente o repositório: <http: //cran.us.r-project. Org>) eo software necessário (ie MikTeX, Phantom, Pandoc)
ACD_compact_large.zip
(cerca de 320 Mb): Contém todos os R-Packages e software necessários para a instalação da App. O usuário não requer conexão à Internet.
Para prosseguir com a instalação, o usuário deve seguir estes passos:
Unzip file: O usuário tem que descompactar o arquivo ACD_compact_small.zip
ou ACD_compact_large.zip
e colocar o conteúdo em qualquer pasta (por exemplo, Desktop
,Documents
ou qualquer outro).
Abrir pasta ACD_standalone: Esta pasta contém todas as informações para instalar e executar a App.
Editar arquivo ACD.bat: Clique com o botão direito do mouse nesse arquivo e selecione “Editar”. Um editor irá abrir o arquivo .bat
eo usuário pode então modificar o caminho ondeR
está localizado. O caminho padrão é:
## C:/Program Files/R/3.2.1/bin/i386
Onde R-X.X.X
é a versão deR
, e i386
contém a versão32bit
de R
. Depois que as alterações forem feitas, salve as alterações e feche o Editor.
Execute ACD.bat: Clique duas vezes no arquivo. Uma janela de comando será exibida.
Select Meteorological Service: O usuário será solicitado a entrar no serviço meteorológico (DMS
, INAMET
ouZMD
). Esta informação tem de ser introduzida apenas uma vez.
Download dos pacotes: Se o usuário usa o arquivo ACD_compact_small.zip
, então o aplicativo baixará os R-Packages necessários automaticamente de um repositório R-CRAN. Caso contrário, o aplicativo conterá os pacotes necessários. Os pacotes serão salvos em:
## ACD_standalone/ACD_App/www/R_pkgs/win.binary
Nota: Esta etapa pode levar alguns minutos. Por favor, seja paciente.
Descompacte e instale bibliotecas: Uma vez que os pacotes são salvos localmente, a App continuará a descompactar e instalar os pacotes como bibliotecas. Essas bibliotecas serão localizadas em:
## ACD_standalone/ACD_App/www/libraries
Nota: Esta etapa pode levar alguns minutos. Por favor, seja paciente.
Download do phantomjs: Se não estiver disponível na pasta ACD_standalone
, o arquivo exactu dophantomjs
será baixado da Internet.
Download e instale o Pandoc: Se não estiver disponível na pasta ACD_standalone
, o arquivo de instalação doPandoc
será baixado da Internet. Uma vez que o arquivo do instalador esteja disponível, ele será executado automaticamente para que o assistente de instalação apareça. O usuário terá que seguir as etapas do assistente.
Download e instale o MikTeX: Se não estiver disponível a pasta ACD_standalone
, o arquivo instalador doMikTeX
será baixado da Internet. Uma vez que o arquivo do instalador esteja disponível, ele será executado automaticamente para que o assistente de instalação apareça. O usuário terá que seguir as etapas do assistente.
Quando o processo de instalação estiver concluído, o ACD-App
será aberto automaticamente.
O App pode ser parado a qualquer momento fechando a janela de comando. Para voltar a executar a aplicação, execute novamente o ficheiro ACD_App.bat
. O ACD_App
será então pop-up automaticamente.
Se o ACD-App vai ser usado para interagir com um banco de dados CLIMSOFT, é necessário configurar uma conexão com esse banco de dados. Isto tem que ser feito através da Open Database Connectivity Tool (ODBC), uma API de middleware de programação standar (Application Programming Interface) para acessar sistemas de gerenciamento de banco de dados (DBMS). O ODBC consegue a independência do DBMS usando um driver ODBC como uma camada de tradução entre o aplicativo e o DBMS.
O aplicativo usa funções ODBC por meio de um gerenciador de driver ODBC com o qual ele está vinculado eo driver passa a consulta para o DBMS. Um driver ODBC pode ser considerado como análogo a um driver de impressora ou outro driver, fornecendo um conjunto padrão de funções para o aplicativo a ser usado e implementando funcionalidade específica DBMS (Wikipedia, 2017).
O ODBC permitirá que o ACD-App identifique e conecte-se ao banco de dados de interesse. Portanto, uma conexão ODBC deve ser configurada. Para fazer isso, é necessário seguir estes passos:
Abra o “Administrador ODBC” por:
Painel de controle
, depoisFerramentas administrativas
e depois Fontes de dados (ODBC)
(Figura 1), ouodbcad32.exe
localizado na pasta:C:/Windows/SysWOW64/
Fontes de Dados (ODBC)
Uma vez aberta, uma Janela que se parece com a Figura 3 será exibida.
Adicionar ...
e selecione um dos drivers listados.Para se conectar ao MS-Access db
, siga estes passos:
Microsoft Access Driver (*.mdb, *.accdb)
e pressione Finish
. (Figura 4)Database: Select
.C:/Program Files (x86)/CLIMSOFT/dbase/
). Uma vez selecionado o banco de dados, clique em OK
.System database
, uma vez que as bases de dados CLIMSOFT se juntam a um grupo de trabalho chamadoclimsoft
. Portanto, é necessário localizar o arquivo climsoft.mdw
que define esse grupo de trabalho. Para isso, selecione a opção Database
no campoSystem Database
. Em seguida, pressione o botão Sistema de banco de dados ...
. Este arquivo está normalmente no caminho C:/Windows/System32 /
ou C:/Windows /SysWOW64
.OK
para salvar as alterações e para fechar a janelaSelecionar banco de dados do sistema
e pressione OK
novamente para salvar as alterações e fechar a janelaInstalação do ODBC Microsoft Access
.Para ligar a um mariadb db
:
MySQL ODBC X.X ANSI Driver
, ondeX.X
se refere à versão do MySQL ODBC (por exemplo, 5.5
). Se o driver MySQL não estiver disponível no computador, é possível baixá-lo em http://dev.mysql.com/downloads/connector/odbc/.
localhost
.mariadb
está instalado.mariadb db
. (Por exemplo, root
).É possível testar a ligação premindo o botão Test
. Uma mensagem aparecerá para dizer se esta conexão foi bem-sucedida.
Para executar o aplicativo, basta clicar duas vezes no arquivo ACD-App.bat
. Após alguns segundos, abre-se um navegador web. A interface ACD-App aparece diretamente no navegador da Web (consulte a Figura 9). O aplicativo está pronto para usar!
Também pode ser acessado a partir de outros computadores conectados à Intranet. Para acessar o ACD-App de outro PC, abra um navegador (por exemplo, Mozilla) e digite o seguinte Endereço:
## http://192.168.178.28:3182
O usuário tem que selecionar então sobre da seguinte fonte de dados:
Se a opção CLIMSOFT
for selecionada, o usuário será solicitado a selecionar um tipo de banco de dados:access
ou mariadb
.
Uma vez que um dos dois foi selecionado, um novo campo pop-up para selecionar a fonte de nome de dados (DNS) do banco de dados ao qual o usuário deseja se conectar. Observe que as opções disponíveis são aqueles DNS definidos anteriormente na Ferramenta ODBC (consulte a Seção Conexão a um banco de dados) Depois de selecionar o banco de dados, o usuário será solicitado a efetuar login no ACD-App antes que qualquer produto possa ser criado. Os usuários padrão disponíveis são:
Admin
: este utilizador tem o controlo total do ACD-AppOperator
: este utilizador tem acesso restrito ao ACD-App. As configurações padrão permitem que o operador crie mapas, crie gráficos, faça relatórios de metadados e obtenha uma visão geral do banco de dados. Por padrão, ele não tem permissão para fazer download de dados.O admin
tem a possibilidade de adicionar, remover ou modificar os direitos de usuário, bem como excluir ou criar novas contas de usuário.
As opções disponíveis em CLIMSOFT
são descritos abaixo.
Cria um Mapa com a localização de todas as estações disponíveis no banco de dados CLIMSOFT. As informações necessárias para traçar o local da estação são armazenadas na base de dados CLIMSOFT. Se for um db
MS-access, então as informações são recuperadas das tabelasstation
e station_location
. Se, em vez disso, for um mariadb db
, as informações serão recuperadas das tabelasstation
e stationlocationhistory
.
É um mapa interativo no qual o usuário pode selecionar uma estação para conhecer sua latitude e longitude, bem como seu ID da OMM. Por padrão, todas as estações são mostradas, mas o usuário pode filtrar os dados por `autoridade ’(veja a legenda no lado direito). Isso é especialmente útil se o banco de dados tem um monte de fontes de dados diferentes. Em seguida, o usuário pode selecionar a fonte de dados (s) em que ele está interessado.
O mapa também pode ser baixado como um arquivo .png
.
Uma vez selecionada uma estação no Mapa, o usuário poderá visualizar os dados disponíveis para essa estação selecionando a opção Criar Tabela '. As informações apresentadas vêm das tabelas
observatione
obs_elementno caso de
MS-access db,
observationinitiale
obselementno caso de
mariadb db`.
A Tabela permite filtrar os dados, pois cada coluna inclui o campo de filtro abaixo do cabeçalho. Além disso, a Tabela inclui um campo search
para facilitar a busca de um parâmetro específico, data, etc.
Se o usuário tem os direitos para baixar dados, então ele poderá baixar a Tabela em um arquivo .csv
.
Essa opção permite ao usuário plotar os dados disponíveis no banco de dados. O usuário pode selecionar uma ou mais estações, e um ou mais elementos. O usuário pode selecionar um dos seguintes tipos de gráficos: Histograma
, Séries temporais
, Comparação de séries temporais
eRosa dos Ventos
(Similarmente ao que foi descrito na seção LOCAL_FILE). Antes de plotar, o usuário também pode especificar o intervalo de datas. Exemplos de tipos gráficos disponíveis são mostrados abaixo.
O ACD-App permite criar um relatório .pdf
para um determinado local. Este relatório contém os metadados principais relacionados ao (s) local (is) selecionado (s). É necessário ter o MikTeX
instalado para executar esta opção corretamente. O aplicativo deve ser capaz de instalar o programa MikTeX
automaticamente quando ele é executado pela primeira vez. O usuário pode baixar e instalar o programa separadamente a qualquer momento (https://miktex.org/download).
O Relatório inclui as seguintes informações:
Esta opção foi incluída para obter uma visão geral rápida dos dados disponíveis no banco de dados CLIMSOFT. Esta Visão Geral permite ao usuário ver a disponibilidade de dados organizada por Autoridade, por Estação ou por Elemento em uma tabela interativa na qual o usuário é capaz de filtrar os resultados. O usuário também pode baixar visão geral da base de dados se ele tem o direito de fazê-lo.
Esta opção permite que o usuário faça uma solicitação de dados para o banco de dados. Primeiro, é necessário selecionar a(s) estação(ões) desejada(s) (é possível selecionar todas as estações também). Em seguida, o usuário pode selecionar o (s) elemento (s) eo intervalo de datas de interesse. Quando estes campos são preenchidos, o botão Request Data
aparece. Ao pressionar o botão, aparecerá uma tabela com os dados solicitados. Esses dados também podem ser filtrados pelo usuário usando os campos de filtro colocados logo abaixo dos cabeçalhos das colunas. Se o usuário tiver o direito Download
, ele poderá baixar os dados em um formato.csv
. O botão de download é marcado abaixo da tabela.
Nota: Opção disponível apenas para o
Administrador
O Administrador
(nome de usuário padrão: admin) pode controlar os direitos de usuário com esta opção. Os direitos que podem ser dados são:
admin
tenha acesso a esta opção)Download: Se marcada, o usuário será capaz de, não só ver os dados, mas também baixar dados. O download de dados será então ativo nas seguintes opções:
Se a opção LOCAL_FILE
estiver selecionada, o usuário será solicitado a selecionar um ou mais arquivos ASCII com os dados que o usuário deseja visualizar. Os formatos aceitos são: .txt
e.csv
A estrutura dos dados armazenados no arquivo pode ser diferente, mas deve conter, pelo menos, as seguintes informações:
station_id
)date
). Na maioria dos casos, a aplicação poderá detectar automaticamente o formato da data.temp_max
)A tabela mostra um exemplo de uma estrutura de arquivo aceita:
station_id | date | temp_max |
---|---|---|
IDL001 | 1880-01-01 | 32.0 |
IDL001 | 1880-01-02 | 34.7 |
IDL001 | 1880-01-03 | 32.7 |
IDL001 | 1880-01-04 | 33.2 |
IDL001 | 1880-01-05 | 34.0 |
IDL001 | 1880-01-06 | 33.4 |
Você pode baixar um exemplo de arquivo .csv
aqui.
Lembre-se de que o ACD-App só reconhecerá os elementos que têm um cabeçalho específico. Esses cabeçalhos são definidos na função Ident_var
do pacoteclimssc
. Você pode encontrar uma lista de cabeçalhos padrão usados no pacote climssc
neste arquivo ou no Anexo 1.
Uma vez que os arquivos foram selecionados, a App tentará reconhecer automaticamente os elementos disponíveis no (s) arquivo (s), bem como o formato de data. Se não for possível detectar essas variáveis automaticamente, o usuário receberá uma mensagem explicando qual é o problema.
Se a App reconhece a estrutura do (s) arquivo (s), então ele pedirá ao usuário para selecionar um tipo de gráfico. As opções disponíveis são: Histograma
,Séries temporais
, Comparação de séries temporais
e Rosa dos Ventos
.
Uma vez que o usuário tenha selecionado uma das opções, basta clicar em OK eo(s) gráfico(s) serão criados (veja a Figura 19). O aplicativo permite o download do gráfico, mas também o download dos dados.
.csv
ETCCDI/CRD (2017). ETCCDI/CRD Climate Change Indices. Software http://etccdi.pacificclimate.org/software.shtml [último acesso: 24.04.2017]
RStudio (2017). Easy web applications in R. https://www.rstudio.com/products/shiny/ [último acesso: 11.04.2017]
Wickham (2017). R Packages. http://r-pkgs.had.co.nz/intro.html [último acesso: 12.04.2017]
Wikipedia (2017). Open Database Connectivity. https://en.wikipedia.org/wiki/Open_Database_Connectivity [último acesso: 11.04.2017]
element.label | default.label |
---|---|
Added_col | Added variable |
alt | alt |
atmospheric_radiation | atmospheric_radiation |
capacity | capacity_max |
cloudiness | cloudiness |
complete_dates | complete_dates |
constructor | constructor |
convert_data | convert_data |
count_over_threshold | count_over_threshold |
daily | daily |
data_end_date | data_end_date |
data_name | data_name |
data_start_date | data_start_date |
date_asstring | date_asstring |
date | date |
date_list | date_list |
date_time | date_time |
day | day |
day_start_time | day_start_time |
dd | dry_day |
dewpoint | dewpoint |
discharge | discharge |
dm | day_month |
dos | dos |
doy | doy |
dycld | Day_with_cloud |
dyfog | Day_with_fog |
dyhail | Day_with_hail |
dylgt | Day_with_Lightningq |
dyrain | Day_with_rain |
dythnd | Day_with_thunder |
element_factor | element_type |
end_date | end |
end_of | end_of |
end_of_rain | end_of_rain |
evaporation | evaporation |
extreme_event_day | extreme_event_day |
fresh_snow | fresh_snow |
geopotential | geopotential |
global_radiation | global_radiation_label |
identifier | identifier |
insolation | insolation |
insolation_max | insolation_max |
insolation_min | insolation_min |
insolation_percent | insolation_percent |
lat | lat |
leaf_dryness | leaf_dryness |
leaf_wetness | leaf_wetness |
lon | lon |
max_evaporation | max_exaporation |
max | Max |
max_rainfall | max_rainfall |
max_temp_max | max_temp_max |
max_temp_min | max_temp_min |
mean_evaporation | mean_evaporation |
mean | Mean |
mean_over_threshold | mean_over_threshold |
mean_rain_per_rain_day | mean_rain_per_rain_day |
mean_temp_max | mean_temp_max |
mean_temp_min | mean_temp_min |
med | med |
merge_data | merge_data |
merged_from | merged_from |
min_evaporation | min_exaporation |
min | Min |
min_rainfall | min_rainfall |
min_temp_max | min_temp_max |
min_temp_min | min_temp_min |
month | month |
multiple_element | multiple_element |
multiple_station | multiple_station |
number_of_rain_days | number_of_rain_days |
number_of_rain_hours | number_of_rain_hours |
ozone | ozone |
press_sl | press_sl |
press_surf | press_surf |
press_wv | press_wv |
quintile | quintile |
rain_amount | rain_amount |
rain | rain |
range | Range |
rd | rain_day |
relative_humidity | relative_humidity |
relh_soil030 | soil_relh_030 |
require_all_variables | require_all_variables |
required_variable_list | required_variable_list |
running_rain_totals | running_rain_total |
running_summary | running_summary |
scattered_radiation | scattered_radiation |
sd_over_threshold | sd_over_threshold |
season | season |
season_start_day | season_start_day |
seasonal_raindays | seasonal_raindays |
seasonal_total | seasonal_total |
skycover | Sky_cover |
snow | snow |
spell_length | spell_length |
start_date | start |
start_of | start_of |
start_of_rain | start_of_rain |
station | station |
station_list | station_list |
station_meta_data | station_meta_data |
subdaily | subdaily |
subyearly | subyearly |
sum | Sum |
summarized_from | summarized_from |
summary_statistics | summary_statistics |
sunshine | sunshine |
temp_air | temp_air |
temp_drybulb | temp_dry_bulb |
temp_max_ground | temp_max_ground |
temp_max | temp_max |
temp_max_soil000 | max_soil_temperature_000 |
temp_max_soil010 | max_soil_temperature_010 |
temp_max_soil020 | max_soil_temperature_020 |
temp_min_ground | temp_min_ground |
temp_min | temp_min |
temp_min_soil000 | min_soil_temperature_000 |
temp_min_soil010 | min_soil_temperature_010 |
temp_min_soil020 | min_soil_temperature_020 |
temp_soil000 | soil_temperature_000 |
temp_soil002 | soil_temperature_002 |
temp_soil005 | soil_temperature_005 |
temp_soil010 | soil_temperature_010 |
temp_soil020 | soil_temperature_020 |
temp_soil030 | soil_temperature_030 |
temp_soil050 | soil_temperature_050 |
temp_soil080 | soil_temperature_080 |
temp_soil100 | soil_temperature_100 |
temp_soil120 | soil_temperature_120 |
temp_soil150 | soil_temperature_150 |
temp_std | temp_std |
temp_wetbulb | temp_wet_bulb |
threshold | threshold |
time | time |
time_period | time_period |
total_rainfall | total_rainfall |
visibility | visibility |
water_equivalent | water_equivalent |
waterbalance | waterbalance |
wind_direction | wind_direction |
wind_speed | wind_speed |
wind_speed_max | wind_speed_max |
wind_threshold | wind_threshold |
year | year |
year_month | year_month |
yearly | yearly |