The current implementation of ChartJS requires superfluous data copying to render multiple views of an NxM array structure. This cost increases for every additional series and interacts extremely poorly with external filtering models which do not simply append/delete from the front or back of the array.