Skip to main content

Ajuste

Este módulo define as classes AdequacaoPage e suas subclasses (RNAdjustPageRegua, RNAdjustPagePCD), que implementam a lógica para a visualização e interação com dados de adequação, incluindo a capacidade de ajustar valores e revisar mudanças de Referência de Nível (RN).

Índice

  1. Visão Geral
  2. Adequação Page
  3. RN Adjust Page
  4. RN Adjust Page Régua
  5. RN Adjust Page PCD

Visão Geral

O módulo adequacao_page define classes para a criação de interfaces de usuário (UI) para a visualização e manipulação de dados de adequação, com foco na técnica de ajuste de Referência de Nível (RN).

  • Abstração de Páginas de Adequação: A classe base AdequacaoPage define a estrutura comum para páginas que permitem a adequação de dados.
  • Implementações Específicas de RN: As classes RNAdjustPageRegua e RNAdjustPagePCD implementam a lógica específica para o ajuste de RN em estações do tipo Régua e PCD, respectivamente.
  • Componentes Bokeh: Utiliza componentes da biblioteca Bokeh para criar gráficos interativos, tabelas editáveis e seletores de data.
  • Integração com Algoritmos: Incorpora a classe AdjustRN para realizar os cálculos de ajuste de RN.
  • Manipulação de Dados: Oferece métodos para filtrar, formatar e atualizar os dados exibidos na interface.

Adequação Page

Classe abstrata que define a estrutura básica para páginas que envolvem alguma técnica de adequação.

Init

Inicializa uma nova instância de AdequacaoPage.

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

Create widgets

Método abstrato para criar os widgets da página. Deve ser implementado pelas subclasses.

Append changes

Adiciona os dados de cotas adequadas a uma lista interna para posterior persistência.

Parâmetros: row (pd.Series): A linha do DataFrame que contém a cota ajustada.

Set dates

Ajusta a data inicial de acordo com o estado de self.date e os dados disponíveis.

Save changes

Exibe um diálogo de confirmação antes de salvar as mudanças realizadas pelo usuário.

Discard changes

Exibe um diálogo para confirmar o descarte de todas as mudanças realizadas.

Discard

Reverte as mudanças realizadas, restaurando os valores originais das cotas e limpando a lista de mudanças.

Enviar adequações

Envia as adequações para serem persistidas no banco de dados. Deve ser implementado pelas subclasses.

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

Create hour select

Cria um widget Select para a seleção de horário (07h ou 17h).

Returns: Select: O widget de seleção de hora.

On hour select change

Método vazio para ser sobrescrito por subclasses, que será chamado quando a seleção de hora mudar.

Create adequação widgets

Cria os widgets comuns para uma página de adequação, incluindo alertas e inputs de delta de dias.

Toggle legend

Ativa ou desativa a exibição da legenda no gráfico.

Parâmetros: plot (figure): O objeto do gráfico Bokeh.

Create widgets 07h

Cria os widgets e glyphs específicos para os dados das 07h no gráfico.

Parâmetros: estimate_label (str): O rótulo da cota adequada. Padrão é cota_sipam.

Create widgets 17h

Cria os widgets e glyphs específicos para os dados das 17h no gráfico.

Parâmetros: estimate_label (str): O rótulo da cota adequada. Padrão é 'cota_sipam'.

Get plot

Cria um gráfico de adequações pendentes, similar ao gráfico da supervisão.

RN adjust page

Classe base para páginas de adequação que utilizam a técnica de ajuste de Referência de Nível (RN).

Herança (RN Adjust Page)

AdequacaoPage (class): Classe abstrata que contém abstrações para as páginas que envolvem alguma técnica de adequação.

Init (RN Adjust Page)

Inicializa uma nova instância de RNAdjustPage.

Parâmetros: doc: O documento Bokeh. token_manager: O gerenciador de tokens para autenticação. data_provider: O provedor de dados. date_picker: O widget de seleção de data.

Atributos: adequador (AdjustRN): Uma instância do algoritmo AdjustRN. used_technique: A técnica usada. change: Armazena as mudanças de RN. _df: Uma cópia do DataFrame de cota horária para manipulação.

Setup data

Configura os dados necessários para a página de ajuste de RN.

Create widgets (RN Adjust Page)

Cria os widgets específicos para a página de ajuste de RN.

Create table columns

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

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

Create table

Cria a tabela para exibir os dados de adequação.

Get plot (RN Adjust Page)

Cria e exibe um gráfico de mudanças de RN pendentes em um diálogo.

Update data

Atualiza os dados exibidos na tabela e no gráfico com base na data selecionada.

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

_Update data

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

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.

Adequar gráfico

Realiza o ajuste de RN no gráfico com base nos parâmetros inseridos pelo analista.

Save changes (RN Adjust Page)

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

Discard (RN Adjust Page)

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

Enviar adequações (RN Adjust Page)

Envia os dados da mudança de RN para a API para persistência.

Create layout (RN Adjust Page)

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.

RN Adjust Page Régua

Classe para a criação de gráfico para a técnica de adequação de mudança de RN da régua.

Create widgets (RN Adjust Page Régua)

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

Update data (RN Adjust Page Régua)

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

Atualizar adequação (RN Adjust 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 (RN Adjust Page Régua)

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

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

RN adjust page PCD

Classe para a criação de gráfico para a técnica de adequação de mudança de RN da PCD.

Create widgets (RN Adjust Page PCD)

Cria os widgets específicos para a página de ajuste de RN da PCD.

Update data (RN Adjust Page PCD)

Atualiza os dados exibidos no gráfico, considerando apenas os dados de 07h e a média da régua para PCD.

Atualizar adequação (RN Adjust Page PCD)

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

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

Create table columns (RN Adjust 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.