Real-Time Visualization in Machine Learning : Evaluating LightningChart Python and Competitor Libraries
Omid, Ahmad (2025)
Omid, Ahmad
2025
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202503204630
https://urn.fi/URN:NBN:fi:amk-202503204630
Tiivistelmä
The thesis evaluates the performance of LightningChart Python (LC PY), Bokeh, and Plotly for real-time machine learning (ML) visualization across data scales from 1,000 to 1,000,000 points, which meets a need for scalable and effective visualization tools in machine learning applications. The study benchmarks these libraries using metrics such as frames per second (FPS), stability (standard deviation of FPS), CPU and memory usage, and render time, to simulate real-time data streams from an LSTM model predicting stock prices into the charts to get the metrics’ results.
Results show that LC PY was the best among all scales, supporting an average FPS of ~55 with excellent stability (std FPS <1), despite higher resource usage (CPU 35–56%, memory up to 2.63% at 1,000,000 points), because of its outstanding scalability. Bokeh delivers very good performance for small to medium datasets (up to 10,000 points, FPS ~105, CPU <3.5%), but its suitability declines above 100,000 points (FPS drops to 5). Plotly performs adequately for smaller datasets (FPS 46–49, CPU <5.13%) but becomes unsuitable for real-time visualization after 10,000 points (FPS 1.23 at 1,000,000). Based on these findings, the thesis recommends LC PY for large-scale and very large-scale ML tasks (100,000+ points), Bokeh or Plotly for small to medium scales (up to 10,000 points), and LC PY or Bokeh for intermediate scales (10,000–100,000 points).
Results show that LC PY was the best among all scales, supporting an average FPS of ~55 with excellent stability (std FPS <1), despite higher resource usage (CPU 35–56%, memory up to 2.63% at 1,000,000 points), because of its outstanding scalability. Bokeh delivers very good performance for small to medium datasets (up to 10,000 points, FPS ~105, CPU <3.5%), but its suitability declines above 100,000 points (FPS drops to 5). Plotly performs adequately for smaller datasets (FPS 46–49, CPU <5.13%) but becomes unsuitable for real-time visualization after 10,000 points (FPS 1.23 at 1,000,000). Based on these findings, the thesis recommends LC PY for large-scale and very large-scale ML tasks (100,000+ points), Bokeh or Plotly for small to medium scales (up to 10,000 points), and LC PY or Bokeh for intermediate scales (10,000–100,000 points).