Skip to main content

Offset

Este módulo define as classes OffsetPage, OffsetPageRegua e OffsetPagePCD que implementam a lógica para a adequação de dados entre dois pontos, acrescentando a todos eles um valor específico, similarmente ao ajuste de RN.

Índice

  1. Visão Geral
  2. Offset Page
  3. Offset page régua
  4. Offset page PCD

Visão Geral

O módulo offset oferece uma interface de usuário para a aplicação de adequações por offset em dados hidrológicos. Suas principais características incluem:

  • Abstração de Páginas de Adequação: Herda de AdequacaoPage, fornecendo uma estrutura padronizada para as páginas de adequação.
  • Implementações Específicas por Tipo de Estação: As classes OffsetPageRegua e OffsetPagePCD lidam com as particularidades de dados para estações do tipo Régua e PCD, respectivamente.
  • Componentes Bokeh: Utiliza extensivamente a biblioteca Bokeh para criar gráficos de linha interativos, tabelas editáveis e seletores de data para definir o período do offset.
  • Algoritmo de Offset: Integra o algoritmo Offset para aplicar o ajuste de valor em um intervalo de tempo definido.
  • Gestão de Alterações: Oferece funcionalidades para aplicar o offset no gráfico, salvar as alterações no banco de dados e descartar edições.

Offset page

Classe para a criação de gráfico para a técnica de adequação de Offset.

Init

Inicializa uma nova instância de OffsetPage.

Parâmetros: doc: O documento Bokeh ao qual a página será adicionada. token_manager: O gerenciador de tokens para autenticação. data_provider: O provedor de dados. date: A data de referência. date_picker: O widget de seleção de data.

Setup data

Configura os dados necessários para a página de adequação de Offset.

Set plot

Cria e exibe um gráfico de adequações pendentes em um diálogo, similar ao gráfico da supervisão.

Create widgets

Cria os widgets específicos para a página de Offset, incluindo inputs de data, valor e o botão de adequação.

Adequar gráfico

Realiza o ajuste de offset no gráfico de acordo com os parâmetros (data inicial, data final e valor) definidos pelo analista.

Atualizar adequação

Atualiza os dados de adequação no gráfico. Deve ser implementado pelas subclasses.

Parâmetros:

df_adequado (pd.DataFrame): O DataFrame contendo os dados de adequação.

Create table

Cria a tabela para exibir os dados de cota, permitindo a edição manual.

Create tabe columns

Cria as colunas da tabela de dados. Deve ser implementado pelas subclasses.

Returns: list[TableColumn]: Uma lista das colunas da tabela.

Set window

Define as datas de início e fim da janela de visualização com base nos seletores de data, ajustando-as para cobrir períodos mínimos/máximos.

Update data

Atualiza os dados exibidos na tabela e no gráfico com base na janela de datas selecionada.

Parâmetros: date (date): A data de referência. Defaults to None.

_Update data

Atualiza os dados específicos da técnica de offset. Deve ser implementado pelas subclasses.

Discard

Descarta as mudanças de offset aplicadas, revertendo o DataFrame interno e limpando o registro da mudança.

Save changes

Inicia o processo de salvamento das mudanças de offset.

Enviar adequações

Envia os dados da adequação de offset para a API para persistência no banco de dados.

Parâmetros: changes_df: DataFrame contendo as mudanças a serem persistidas.

Create layout

Cria o layout da página, organizando os widgets e o gráfico.

Returns: UIElement: O layout completo da página, combinando inputs, botões, tabela e gráfico.

Offset Page Régua

Classe para a criação de gráfico para a técnica de adequação de Offset (Régua).

Create widgets (Offset Page Régua)

Cria os widgets específicos para a página de Offset de Régua.

_Update data (Offset Page Régua)

Atualiza os dados exibidos no gráfico e na tabela para estações tipo régua, separando os dados de 07h e 17h.

Atualizar adequação (Offset Page Régua)

Atualiza os dados de adequação no gráfico, com base no DataFrame df_adequado, para estações tipo régua.

Parâmetros: df_adequado (pd.DataFrame): O DataFrame contendo os dados de adequação ajustados.

Create table columns

Cria as colunas da tabela para estações do tipo régua, incluindo campos para cotas de 07h e 17h.

Retorno:

list[TableColumn]: Uma lista das colunas da tabela.

Offset page PCD

Classe para a criação de gráfico para a técnica de adequação de Offset (PCD).

Create widgets (Offset Page PCD)

Cria os widgets específicos para a página de Offset de PCD.

_Update data (Offset Page PCD)

Atualiza os dados exibidos no gráfico e na tabela para estações tipo PCD, focando apenas nos dados de 07h e incluindo a média da régua se aplicável.

Atualizar adequação (Offset Page PCD)

Atualiza os dados de adequação no gráfico para estações tipo PCD, focando apenas nos dados de 07h.

Parâmetros: df_adequado (pd.DataFrame): O DataFrame contendo os dados de adequação ajustados.

Create table columns (Offset Page PCD)

Cria as colunas da tabela para estações do tipo PCD, focando apenas nos campos de 07h.

Returns: list[TableColumn]: Uma lista das colunas da tabela.