The error shows that the context M/F does not returning the Required object check your context m/f once
The chart widget needs a context object. Normally, the shown chart data is related to this object, but you are always retrieving the same data in your datasource for the chart, so in your case you don't really need a dataview. But since the widget needs one, try to put it in a dataview (wrapper) that returns a non persistable object without any attributes.
As a source for the dataview, create a microflow that creates on object of ChartWrapper and return it as object.
Now, within the chart flow, why are you persisting the graph objects? Since these will be created every time, there is no reason to do this (persuming that is what you want to do) , so make the graph entity non persistable and don't commit the create within the loop.
This should work, but is only ideal if you always want to refresh the data points using the rest service.