Plotly-Resampler: Effective Visual Analytics for Large Time Series

Jonas Van Der Donckt, Jeroen Van Der Donckt, Emiel Deprost, Sofie Van Hoecke

View presentation:2022-10-19T19:27:00ZGMT-0600Change your timezone on the schedule page
2022-10-19T19:27:00Z
Exemplar figure, described by caption below
v-short 1021 highlights Plotly-Resampler; an open-source Python toolkit which aims to improve effective visual analytics for large time series. Plotly-Resampler adds scalability to an interactive visualization toolkit (Plotly), by separating the visualization into two components; a front- and a back-end. The front-end shows an aggregation of the raw time series data which is stored in the back-end. Optimized callbacks and aggregation methods enable Plotly-Resampler to interactively visualize large time series. Check out the code at GitHub: github.com/predict-idlab/plotly-resampler

Prerecorded Talk

The live footage of the talk, including the Q&A, can be viewed on the session page, Visualization Systems and Graph Visualization.

Keywords

Time series, Visual analytics, Python, Dash, Plotly, Open source

Abstract

Visual analytics is arguably the most important step in getting acquainted with your data. This is especially the case for time series, as this data type is hard to describe and cannot be fully understood when using for example summary statistics. To realize effective time series visualization, four requirements have to be met; a tool should be (1) interactive, (2) scalable to millions of data points, (3) integrable in conventional data science environments, and (4) highly configurable. We observe that open source Python visualization toolkits empower data scientists in most visual analytics tasks, but lack the combination of scalability and interactivity to realize effective time series visualization. As a means to facilitate these requirements, we created Plotly-Resampler, an open source Python library. Plotly-Resampler is an add-on for Plotly's Python bindings, enhancing line chart scalability on top of an interactive toolkit by aggregating the underlying data depending on the current graph view. Plotly-Resampler is built to be snappy, as the reactivity of a tool qualitatively affects how analysts visually explore and analyze data. A benchmark task highlights how our toolkit scales better than alternatives in terms of number of samples and time series. Additionally, Plotly-Resampler's flexible data aggregation functionality paves the path towards researching novel aggregation techniques. Plotly-Resampler's integrability, together with its configurability, convenience, and high scalability, allows to effectively analyze high-frequency data in your day-to-day Python environment.