Gráficos
A barra de ferramentas que todo gráfico carrega e o que cada botão faz, os painéis de escala, de estatísticas e de linhas de referência, a janela de gráfico destacada, onde os gráficos aparecem no aplicativo, e o motor único por trás de todos eles.
Todo gráfico do aplicativo é desenhado por um motor só (ECharts) através de uma vista de gráfico só, seja qual for o que o colocou na tela: os componentes Gráfico de linhas, Gráfico de barras e Gráfico de pizza num dashboard, o cartão de canais de um painel de unidade, o gráfico ao vivo de uma execução na página do Process, o gráfico de datalog de uma execução gravada nos Históricos, a prévia do perfil de uma receita ou de um procedimento, a prévia do critério de uma avaliação, e as duas janelas destacadas abaixo. O que muda entre eles é de onde vem a configuração, nunca o desenho: uma lacuna nos dados é sempre um buraco na linha, nunca uma ponte, e todo número e todo instante que o gráfico escreve segue o idioma e os formatos da própria estação. O relatório em PDF desenha a mesma coisa sem nenhuma das ferramentas desta página.
A barra de ferramentas
Um gráfico carrega uma fileira de botões sobre a área de desenho: a mesma barra em todo lugar, avisada por gráfico de quais botões desenhar. Num componente de dashboard essa lista é a seção Caixa de ferramentas das propriedades dele (O editor de dashboard); uma superfície sem ninguém a quem perguntar (uma execução gravada, a prévia de uma receita) oferece toda ferramenta que um gráfico de tempo consegue honrar. Sem ferramenta nenhuma, nenhuma barra é desenhada.
| Botão (a dica dele) | O que ele faz | Oferecido em | Ligado por padrão numa tela |
|---|---|---|---|
| Abrir em outra janela | Abre o mesmo gráfico numa janela própria (veja abaixo). Só onde o gráfico tem um endereço próprio: uma execução gravada nos Históricos, o perfil de uma receita. Nunca num gráfico colocado numa tela. | Execuções gravadas, perfis de receita | não é oferecido |
| Selecionar uma área para ampliar | Arma a ampliação por caixa: o arrasto seguinte sobre a área de desenho enquadra a caixa que ele desenha, em vez de deslocar. O botão fica aceso enquanto está armado. | Gráficos de tempo | sim |
| Restaurar o zoom | Devolve o enquadramento a tudo o que está desenhado. | Gráficos de tempo | sim |
| Definir a escala à mão | Abre o painel de escala, abaixo. Fica aceso enquanto algo está fixado, então uma escala que deixou de acompanhar os dados diz isso sem precisar ser aberta. | Gráficos de tempo | não |
| Mínimo, média e máximo da janela mostrada | Abre o painel de estatísticas, abaixo. Medido só enquanto o painel está aberto. | Gráficos de tempo | não |
| Desenhar uma linha de referência | Abre o painel de linhas de referência, abaixo. Fica aceso enquanto alguma linha está desenhada. | Gráficos de tempo | não |
| Salvar PNG | Baixa o desenho como PNG no dobro da resolução da tela, sobre o fundo do tema, com o nome do título do gráfico ("chart" quando ele não tem título). | Todos os gráficos | sim |
| Copiar PNG | Põe o mesmo PNG na área de transferência. Um navegador que recusa escrita na área de transferência não faz nada, em silêncio. | Todos os gráficos | sim |
| Mostrar ou esconder séries | Abre uma lista das séries desenhadas com uma caixa de seleção cada, lida direto do gráfico; desmarcar esconde uma série enquanto a tela ficar aberta. "Nenhuma série" quando nada está desenhado. | Gráficos de tempo | sim |
| A dica de valor está desligada / A dica de valor está ligada | Liga ou desliga a leitura ao passar o cursor. Ela abre desligada, para que uma mão cruzando a área de desenho nunca a cubra com uma caixa que ninguém pediu; a escolha dura a sessão. | Gráficos de tempo | sim |
| Tela cheia | Preenche a janela com este gráfico só, pela tela cheia de elemento do navegador; pressionar de novo, ou o Esc, devolve a janela. Num dashboard já em tela cheia ele expande o gráfico, e o Esc sai do gráfico antes de sair do dashboard. | Todos os gráficos | sim |
Um gráfico de barras ou de pizza consegue honrar só o par de PNG e a tela cheia: uma comparação lida neste instante não tem eixo a percorrer, não tem janela a medir e não tem onde assentar uma linha. Só um painel fica aberto de cada vez, e um toque em qualquer outro lugar o fecha.
Ampliar e deslocar são a configuração de Navegação do gráfico (um enquadramento fixo, roda e arrasto, ou roda e arrasto mais uma barra de navegação sob a área de desenho mostrando onde o enquadramento fica dentro da gravação inteira); um gráfico com subgráficos empilhados move todos juntos, porque eles dividem um eixo de tempo só. Um gesto nunca toca no que está guardado: o gráfico desenha o que chega ao canvas vindo da faixa visível, então ampliar sempre revela os dados de verdade, e uma marca no canto pode dizer se a figura é a medição ou uma redução dela (Gráfico de linhas).
Definir a escala à mão
O painel fixa um período do eixo de tempo e uma faixa do eixo de valor, cada lado de forma independente. Todo campo confirma quando você sai dele; um campo vazio é um lado deixado livre, ainda se ajustando sozinho.
| Campo | O que ele aceita |
|---|---|
| Período / Período (s a partir de agora) / Amostras | As duas pontas do eixo de tempo, pedidas nas palavras em que o eixo é desenhado: dois seletores de data e hora num eixo de relógio, dois números de segundos num eixo relativo, duas contagens de amostras num eixo de amostras. |
| Eixo de valor, mínimo e máximo | As pontas do eixo de valor do próprio gráfico. Num gráfico com subgráficos empilhados esta é só a régua do subgráfico de cima; o período de tempo move todos juntos. |
| Automático (um por eixo) | Devolve aquele eixo ao enquadramento que o gráfico montou: uma janela deslizante volta a deslizar, um eixo escrito com pontas fixas volta a elas, um escrito sem nenhuma volta ao ajuste livre dele. Esmaecido enquanto nada está fixado naquele eixo. |
| Carregar a janela mostrada | Preenche os quatro campos com o enquadramento que está mesmo na tela, depois de todo zoom e deslocamento que você fez, então fixar o que você está olhando custa um toque. |
A fixação pertence a este gráfico nesta conexão: ela nunca é salva com a tela, outro navegador olhando o mesmo gráfico tem a dele, e fechar a tela a solta. Um enquadramento fixado que não contém nenhuma das amostras ainda assim desenha, e diz isso sob a área de desenho: "Nada foi medido dentro da escala que você fixou."
Mínimo, média e máximo
O painel é uma tabela com uma linha por série desenhada (uma série que o autor da tela desligou não está na tela e não está na tabela; uma escondida pela legenda continua nela), colorida com a tinta dela, com Mínimo, Média e Máximo sobre as amostras dentro da janela mostrada, escritos do jeito que a estação escreve números. A linha acima da tabela diz qual janela é essa: "A janela mostrada, até a amostra mais nova." ou "A janela mostrada. A amostra mais nova está além da borda direita dela." quando você caminhou para trás no histórico. A dica de uma linha diz quantas das amostras da janela eram leituras; uma lacuna conta como uma amostra que a janela guardou e como nada nos três números, então nenhuma média é tirada por cima de um buraco. Uma linha sem nada a ler escreve lacunas e diz qual silêncio é: "Nada desta série foi amostrado na janela mostrada." ou "Toda amostra desta série na janela mostrada é uma lacuna." Os números acompanham os dados ao vivo enquanto o painel está aberto e são medidos sobre as próprias amostras, nunca sobre o desenho reduzido.
Linhas de referência
Uma linha de referência é uma linha num valor, atravessando a área de desenho, ou num instante, descendo por ela, com palavras dizendo por que ela está ali e uma cor para distingui-la da próxima. O painel lista o que está desenhado, cada linha com o ✕ dela, e Remover todas; sob a lista, um formulário pequeno desenha a próxima:
| Campo | O que ele aceita |
|---|---|
| Qual eixo | Num valor, ou o eixo de tempo nas palavras dele: Num instante (um seletor de data e hora), Num segundo (a partir de agora) ou Numa amostra. Trocar o eixo esvazia a posição, já que um valor e um instante não são o mesmo número. |
| Onde a linha fica | A posição naquele eixo. Desenhar a linha fica esmaecido até haver uma. |
| O que a linha diz | Texto opcional desenhado sobre a linha. |
| A cor da linha | Um seletor de cor; uma linha começa âmbar. |
| Desenhar a linha | Desenha a linha. A posição e o texto se esvaziam para a linha seguinte; o eixo e a cor ficam. |
As linhas pertencem ao gráfico à sua frente e a mais nada: elas não são salvas, o autor da tela nunca fica sabendo, outra conexão não as vê, e fechar a tela as encerra. Uma anotação que precisa durar mais que o olhar pertence a uma execução, onde o arquivo da própria execução a registra (Execuções e comentários).
A janela de gráfico destacada
Abrir em outra janela abre a rota do próprio gráfico numa janela nova: uma janela de verdade do aplicativo na estação, uma aba nova num navegador remoto. Pressionar de novo traz a janela existente para a frente, em vez de abrir uma segunda. Existem duas rotas:
| Rota | O que ela mostra | Aberta de |
|---|---|---|
/chart/run/{id} |
O gráfico de datalog de uma execução gravada, relido do arquivo da execução: as séries, as anotações, os comentários e as faixas aprovadas do procedimento dela como estão configuradas agora. "Execução não encontrada" quando o id não resolve para nada. | O gráfico de uma execução nos Históricos |
/chart/recipe/{id} |
O perfil de Degrau, Rampa e Patamar de uma receita, remontado a partir dos modelos salvos. "Receita não encontrada" quando o id não resolve para nada. | O editor de receitas e a prévia de receita de um procedimento |
A janela desenha sem o shell: sem trilho, sem barra de título, sem barra de status, só uma barra no topo com o título do gráfico e Sincronizar o X com o gráfico principal ("Espelhar a ampliação e o deslocamento do eixo X com o gráfico principal"), ligada por padrão, sobre o gráfico com a barra de ferramentas inteira dele. Enquanto a sincronia está ligada a janela entra num canal identificado pela rota dela e acompanha o zoom e o deslocamento do gráfico principal no eixo de tempo; desligada, ela navega sozinha. Cada rota exige o que admite uma identidade ao que ela desenha: a janela de uma execução pede Ver históricos, a mesma permissão que admite o navegador de execuções gravadas de onde ela é aberta, e a janela de uma receita pede a política da própria página do Process, que qualquer uma das quatro chaves do Process ou Ver históricos abre. Um papel sem o que a rota dele pede, ou um rebaixado com a janela aberta, não consegue ler aquele gráfico pelo endereço. A janela é somente leitura: os comentários e as anotações são editados nos Históricos, não aqui.
O que as ferramentas não fazem
Nada na barra muda a tela: uma série escondida, uma fixação, uma linha e o estado da dica são todos estado deste gráfico nesta conexão, e uma tela reaberta amanhã abre limpa. Nada na barra chega a um relatório: o PDF desenha o que o produtor dele monta, sem fixações, sem linhas e sem ferramentas. A barra não exporta dado nenhum, só figuras: os números de uma execução saem pelas exportações dos Históricos. E a barra não oferece ferramenta que o desenho não consiga honrar: uma comparação de categorias nunca ganha zoom, escala, estatísticas ou linhas, e um gráfico numa tela nunca ganha uma janela própria.