Redesign of the JavaFX Charts Library in View of Real-Time Visualisation of Scientific Data

2019 
The accurate graphical representation of accelerator- or beam-based parameters is crucial for commissioning and operation in any modern accelerator. Charts are one of the most visible but at the same time often underappreciated accelerator control system components even though these are crucial for easing and improving a quick intuitive understanding of complex or large quantities of data, which in turn is used to efficiently control, troubleshoot or improve the accelerator performance. While the Java SDK and other third-party libraries provide some charting components, we found that these lack either functionality, performance, or are based on outdated complex APIs. Based on earlier GSI and CERN designs and careful analysis of missing functionalities, performance bottlenecks, and long-term maintenance risks for the necessary workarounds, we decided that it was worth to re-engineer a new scientific charting library that preserves the functionality of established other libraries while addressing the performance bottlenecks and APIs issues. The new library offers a wide variety of plot types common in the scientific community, a flexible plugin system to extend the functionality towards chart interactors as well as online parameter measurements commonly found in oscilloscopes. Tailored towards high performance, it achieves real-time update rates up to 25 Hz for data sets with a few 10k up to 5 million data points. The new API shields the complexity from and eases the library’s use by normal users, while still being modular and having explicitly open interfaces that allow more-inclined developers to modify, add or extend missing functionalities. This contribution provides a performance and functionality comparison with other existing Java-based charting libraries.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    3
    References
    0
    Citations
    NaN
    KQI
    []