Currently the PlotModel is thought of as a "view model" for the plots. This works, but I think it could be cleaner if it was the "model" of the plots. By moving view-specific data out of all plot elements we could achieve
* the same PlotModel can be used in multiple views
* the PlotModel can be exported at the same time as it is refreshed in the user interface
* better separation of model, view and controller
Implementation examples
* move all `Actual*` properties
* move scale and origin out of axes
* move transformed points out of series
* `Render` methods should take view specific data (additional argument, or contained in `IRenderContext`)
Need a design pattern where to store the view-specific data. In a "view model" or in the "view"?
* the same PlotModel can be used in multiple views
* the PlotModel can be exported at the same time as it is refreshed in the user interface
* better separation of model, view and controller
Implementation examples
* move all `Actual*` properties
* move scale and origin out of axes
* move transformed points out of series
* `Render` methods should take view specific data (additional argument, or contained in `IRenderContext`)
Need a design pattern where to store the view-specific data. In a "view model" or in the "view"?