Here is an abstract I am currently working on for another project, that I've improved upon as a stand alone object.
xydrag is 100x100 pixel grid that outputs 2 floats for the x & y values and acts similar to a track pad where the mouse movement updates the values not the mouse position, in fact it even works on my touch screen
At the moment the output range can be set via a 4 value message [range xmin xmax ymin ymax( or just the values as creation args.
I will add scaling and colour next.
Cheers
Balwyn