The diagram unit provides a view class to draw linear/spline graphs through given points and a model class storing such points. For Lazarus.
Multiple views can show and modify (by dragging the marking points) the same model.
See my webpage for the detailed diagram documentation