This example shows automatic refresh (every 3 seconds), although this is most useful in conjunction with a URL where the data may change each time. To make something visible, some background code is tweaking the values randomly so that the automatic refresh always pulls changed data.
To see how the widget can cope with different data shapes, switch from jsondata0 to jsondata1 as the input data. jsondata0 is structured as complete 'series' of values, gathered into an array with series titles. jsondata1 is structures as 'data points', each containing multiple sales values.
Note that the widget is driving its own DOM node (the chart, in this case, although it could be any of the components) and is also driving other nodes containing the grid, legend, etc.
Now here is the same data displayed in a grid (also driven by the same DataPresentation widget):