Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
815
XamDataChart refresh time
posted

How can we improve the update performance for an XamDataChart using the following?

a. 15 ScatterLineSeries with 1 new data point added per second and data in an ObservableCollection
b.  10,000 - 40,000 data points per line
c.  No data point markers, no fancy line styles
d. Data is added to each series at random times during the 1 second interval (i.e., comes from a serial device) and also comes in a random order.  
e. These updates come in on 1 thread per data series and all updates to the observable collection are routed through the graph UI thread
f. X axis is time the data was collected (i.e, cannot use LineSeries)
g. The xamdataChart built-in zoom mini-map widget is located in the lower right hand corner. 

This graph functions with good speed for about 1 hour and then becomes unresponssive.  For example, if you zoom in when the graph has good performance, wait, and then keyboard up/down/left/right after 1 hour, it take 20-30 seconds to shift the zoomed in are by 1 keystroke.

The CPU after 1 hour was a flat 25% of a 4 core CPU machine.   Our VS 2010 profiling showed that 75% or more of the time was spent in a UI rendering code (maybe due to refreshing the graph 15 times each second).