I wonder if there is any interest in this anymore? And if so, maybe this can be a Jira feature request…
If you look at the source under Activiti/modules/activiti-diagram-rest, you can see the service implementation which is used by the diagram-viewer in the Explorer webapp to generate the process-diagram and instance-highlights.
I was able to copy/paste the existing implementations (ProcessInstanceHighlightsResource and ProcessDefinitionDiagramLayoutResource) which use the process runtime service, and tweak them a bit to use the history service instead. I just prepended "historic-" to the names of the new resources I just created to denote they would use the history service exclusively. It actually made the code a bit simpler, as the existing implementation was fusing activity states from both history and runtime to generate highlights.
On the one hand, to make it seamless, the implemenation could be made to rely more on the History tables to generate the instance diagram, so that a query can be made for any process instance irrespective of if it is completed or not. But, it looks like that would require the History logging to be turned up (which is not a requirement).
On the other hand, to accomodate sites which do not use history logging, the diagram-viewer would need to first decide if the process is complete or not (e.g. has been removed from runtime), before calling a "historic-" version of ProcessInstanceHighlightsResource.