Funcionamento do projeto
Atualmente, o projeto é dependente de dois serviços, como indicado na página inicial: Um servidor Bokeh programado em Python para a parte gráfica e operações em dados, localizado na pasta bokeh_server, e um serviço Next.js que faz uso de React em JavaScript para abrigar as respostas do servidor Bokeh e para outros elementos de interface, localizado na pasta estacoes.
Em bokeh_server está declarado o código que irá criar os gráficos mensais e anuais adequadamente a partir da obtenção dos dados pela API, bem como as ferramentas de correção semiautomatizadas.
Em estacoes, há uma aplicação Next.js que mostra uma mapa da Bacia amazônica com o uso de Leaflet e, também com o uso da API, consegue demarcar geoespacialmente cada estação dentro da mesma.
O vídeo abaixo mostra o funcionamento da aplicação na versão v1.0.16 do dia 27/02/2025. O vídeo mostra sucintamente as capacidades do sistema de adequação, supervisão e administração.
Descrição do funcionamento
O funcionamento geral do sistema é bastante simples: o servidor Bokeh retorna um documento HTML, que é mostrado em uma tag iframe dentro da aplicação Next.js.
Home
A página inicial mostra o mapa brasileiro, demarcando a bacia amazônica através de um geosserviço e um arquivo de demarcação de coordenadas JSON (respectivamente marcando a Amazônia legal e bacias hidrográficas). Também são marcadas, a partir de uma consulta à API, as estações de medição disponíveis para consulta e se elas possuem dados "régua" ou "PCD".
Ao clicar em uma delas, um popup marcando o código, a medição mais recente e a quantidade de inconsistências por tipo de estação aparece, bem como um botão para consultar seus gráficos. Clicar num destes botões deve redirecionar o usuário ao gráfico da estação em questão.
Funcionamento após seleção
Após a seleção da estação, os gráficos e a tabela são mostrados ao usuário de acordo com a disponibilidade (isto é, se houverem ambos os gráficos de "régua" e "PCD", eles estarão separados por uma guia selecionável. Se não, somente um dos dois tipos será mostrado). Os gráficos mostram, respectivamente, a última série mensal disponível e a série anual correspondente a este mês. A tabela mostra a série mensal selecionada, podendo ser alternada entre horários se os dados forem do tipo "régua" (a série mensal é obtida às 7h e às 17h).
Estes dados podem ser editados de acordo com a necessidade do usuário, e as edições podem ser consistidas como uma adequação a partir do uso do botão "Gravar adequações". Também é possível reverter as adequações manuais realizadas com o botão "Reverter dados".
Adequação
A tela após a seleção possui também um dropdown que permite a seleção de técnicas de adequação semiautomáticas. Com a seleção e um clique no botão "Adequar gráfico", o usuário é levado a uma tela de adequação que seja correspondente à técnica selecionada e ao mês de referência no seletor de datas da tela anterior. Na versão atual, existem duas técnicas funcionais e uma em desenvolvimento. São elas:
- Interpolação;
- Ajuste de RN;
- Offset;
- Regressão usando dado de régua;
- Inconsistências contextuais.
Futuro da Aplicação
O futuro da aplicação está definido dentro de issues já delineadas no GitHub do projeto.
Histórico de versão
| Versão | Data | Descrição | Autor | Revisor |
|---|---|---|---|---|
1.0 | 05/02/2024 | Criação do documento | Felipe M. | - |
1.1 | 21/02/2024 | Atualização de integração de aplicações | Felipe M. | Cássio Reis |
1.2 | 23/02/2024 | Adição de vídeo do funcionamento | Cássio Reis | Felipe M. |
1.3 | 23/02/2024 | Atualização do link da versão atual | Cássio Reis | Felipe M. |
1.4 | 05/03/2024 | Adição da seção de "Adequação" | Felipe M. | Cássio Reis |
1.5 | 21/03/2024 | Reescrita de partes chave do documento | Felipe M. | Cássio Reis |
1.5 | 15/07/2024 | Atualização para inclusão de medições PCD | Felipe M. | Cássio Reis |
1.6 | 09/12/2024 | Atualização de detalhes do funcionamento atual | Felipe M. | Cássio Reis |