Pergunta

Houve uma linha mais adiantada em Java gráfico ou tabela biblioteca , onde JFreeChart foi encontrado para ser muito bom, e , como declarou no seu FAQ , não significou para renderização em tempo real.

Alguém pode recomendar uma biblioteca comparável que suporta renderização em tempo real? Apenas alguns xy-rendering básico -. Por exemplo, recebendo um sinal de tensão do sistema de aquisição de dados e traçando-lo como se trata (tempo em x-eixo, a tensão no eixo y)

Foi útil?

Solução

O que o FAQ realmente diz é que JFreeChart não suporta difícil de gráficos em tempo real, o que significa que o gráfico não é atualizada quando novos dados chegam ou pelo intervalo determinística depois. No entanto, eu descobri que JFreeChart pode ser usado para o tipo de aplicações que você está descrevendo. Você pode conseguir uma atualização por segundo, o que é bom. Eu não acho que um olho humano pode seguir algo mais rápido do que isso.

Se você quiser algo mais do que isso, eu duvido que você vai encontrar qualquer coisa em Java (ou mesmo em outro idioma). Os sistemas que usamos não são projetados operar a ser em tempo real. Você não pode ter uma garantia de que eles vão responder em um intervalo mínimo após um evento. A forte integração com o driver de hardware que serão necessários para mostrar mais de 1-10 frames por segundo.

No entanto, se você criar seu aplicativo corretamente, o sistema operacional irá fazer responder rapidamente e sua aplicação pode facilmente exibir um gráfico "em tempo real" (que significa um gráfico que as atualizações uma vez por segundo). Só não use seu aplicativo para desligar uma válvula em uma situação de emergência!

Outras dicas

Apenas tropeçou em uma descrição sobre como usar o VisualVM biblioteca de gráficos . Looks very nice!

tem uma olhada processamento - é um ambiente de código aberto, baseado em Java projetado para todos os tipos de animação visualizações.

Bem, se ele tem que ser Java, então você pode querer olhar para estes.

Você provavelmente já encontrou uma boa solução, mas se não, eu tenho feito recentemente um trabalho sobre um quadro para a produção de 2D gráficos permitindo atualizações ao vivo a uma taxa de mais de 50 mudanças por segundo.

A intenção original era para imitar a aparência de um registrador gráfico em uma região de rolagem de uma página web, mas acredito que a abordagem tem aplicação mais ampla.

A demo pode ser encontrada em Chart Recorder Demonstração se alguém estiver interessado.

A aparência é definida por um molde (www.journeylog.co.uk/chart/templates/chartRecorder.xml). Uma característica é a capacidade de especificar desenho, quer no servidor ou no navegador usando ExplorerCanvas.

Se alguém estiver interessado eu poderia começar um projeto open source para ele.

rápido o suficiente para o tempo real é swtchart , pelo menos na minha experiência. Mesmo com lotes de dados. Não se assustado do número da versão, sim, é uma nova API, mas eu usá-lo com sucesso, sem problemas.

Como o nome indica, é baseado em SWT , que usa desenho OS nativo. Também faz algumas otimizações inteligentes para desenho rápido, como não atraindo todos os pontos no conjunto de dados (ver Large Series Exemplo de trechos).

JCCkit é variar boa biblioteca que está direcionando menos memória especialmente no ambiente incorporado: https://sourceforge.net/projects / jcckit .

Leva menos de <100 kb.

Você poderia cavar em torno da fonte para o NetBeans. O profiler faz tempo real de gráficos de várias coisas, como o uso de memória.

SWT XYGraph podem organizar os dados com o seu próprio provedor de dados, assim você pode criar um provedor de dados em tempo real, fornecendo dados ao vivo. Com SWTChart e JFreeChart, você tem que preparar a matriz inteira para ele.

Esta questão foi respondida bem em: Java em tempo real de gráfico plotagem

Como VisualVM inclui uma API de gráficos, e este API está incluída no JDK, você tem uma boa / API rápido gráficos disponíveis.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top