Plot
Dedicado à criação e configuração de gráficos Bokeh para visualização de dados hidrológicos, com foco particular na representação de cotas horárias, adequações e mudanças de Referência de Nível (RN).
Índice
Visão Geral
O módulo plot centraliza a lógica de geração de visualizações interativas Bokeh, oferecendo:
- Plotagem de Séries Temporais: Cria gráficos de linha para cotas horárias (07h e 17h), incluindo funcionalidade de tooltip.
- Visualização de Adequações: Adiciona pontos de dispersão coloridos para representar adequações pendentes, com mapeamento de cores dinâmico.
- Representação de Mudanças de RN: Calcula e plota linhas tracejadas para indicar o efeito de mudanças de RN nos dados de cota.
- Ferramentas de Interação: Configura HoverTools para exibir detalhes dos pontos e permite ocultar/mostrar legendas.
- Reutilização de Componentes: Utiliza funções e classes auxiliares para a criação de figuras, formatação e aplicação de algoritmos.
Create plot
Cria um objeto de gráfico Bokeh completo a partir dos dados de cota fornecidos.
Parâmetros:
cota_07h (pd.DataFrame): Os dados de cota registrados às 07h.
cota_17h (pd.DataFrame): Os dados de cota registrados às 17h.
is_regua (bool): Um booleano que indica se a estação é do tipo "régua".
adequacoes_pendentes (pd.DataFrame | None): Um DataFrame contendo as adequações já realizadas no período que ainda não foram supervisionadas. Padrão é None.
mudancas_rn_pendentes (pd.DataFrame | None): Um DataFrame contendo as mudanças de RN pendentes que precisam ser plotadas. Padrão é None.
Returns:
figure: O objeto de gráfico Bokeh configurado.
Create color map
Mapeia cores para as adequações pendentes.
Parâmetros:
pendentes (pd.DataFrame): DataFrame de adequações já realizadas no período que ainda não foram supervisionadas.
Calculate RN
Calcula o efeito das mudanças de RN nos dados de cota, gerando cotas ajustadas para cada mudança de RN.
Parâmetros:
cotas (pd.DataFrame): DataFrame contendo todos os dados de cota (07h e 17h combinados).
mudancas_rns (pd.DataFrame): DataFrame com as informações sobre as mudanças de RN pendentes.
Returns:
list[pd.DataFrame]: Uma lista de DataFrames, onde cada DataFrame representa as cotas ajustadas por uma mudança de RN específica.
Draw RN
Adiciona as linhas tracejadas.
Parâmetros:
plot (figure): O objeto de gráfico Bokeh ao qual as linhas de RN serão adicionadas.
mudancas_rn_dfs (list[pd.DataFrame]): Uma lista de DataFrames, cada um contendo as cotas ajustadas por uma mudança de RN