如何解决Java JFree图表实时图表将域标签从毫秒转换为HH:MM:SS
我用JFreechart创建了一个实时图表,其中Domain轴是纪元毫秒。我希望标签显示HH:MM:SS
。
这是我用来向图表加载数据的代码块。我是Java的新手,非常感谢您提出任何建议。
Thread thread = new Thread(){
public void run() {
try (Scanner scanner = new Scanner(chosenPort.getInputStream())) { // Read Data from Serial Port
int x = 0; // Set data
while(scanner.hasNextLine()) {
long epoch = System.currentTimeMillis();
chart.getXYPlot().getDomainAxis().setRange(epoch - 30000.00,epoch + 1000.00);
try{
String line = scanner.nextLine();
int number = Integer.parseInt(line); //
series.add(epoch,number); // add Data to Chart
p1.repaint();
}catch(Exception e) {}
}
}
}
};
解决方法
我使用的是XYseries折线图,而不是时间序列图。通过使用JFreeChart chart = ChartFactory.createTimeSeriesChart
而不是JFreeChart chart = ChartFactory.createXYLineChart
,可以自动解释并显示正确的日期/时间值。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。