Since nobody else seems to be able to help...
I understand that there isn't a direct correllation between a tty/pts, etc and a display, but no suggestions from anyone expect one person (and many thanks to that one person)?
Anyhow, for the future, I'll let everyone know how I had to do it.
I created a wrapper script for the graphical process I am attempting to track, which wrote to a log directory the process number and display variable when it launched the script.
The log program can then read the files in that directory, and hence there is a direct link between the process and the display it is running on. It then can use ps/top, etc to gather other information on the process.
So does nobody know of any system commands that will give the display/host of a process? It seems that it would be a fundamental piece of information that the kernel has to manage - why can't it be accessed?