How to draw an interactive image?

Is there any way to render an image “interactively” which could respond to mouseover/click event so certain image parts could be highlighted?
For example, suppose I want to render an image of directed graph with five vertice A, B, C, D, E. What I want to achieve is that when I click A, my wx app could get notified and thereby reset A’s background to let it be highlighted?

I think the answer depends on the nature of the image/graph. But one solution would be:

Create a panel and draw your graph using paths on a wx.GraphicsContext. Store a reference for the path coordinates. Bind the mouse events to a handler. On the handler, check whether the event coordinates do match some of the regions to be highlighted. If they do, then redraw that path with a highlight colour.

The wx.lib.ogl package is rather dated, but it was designed to do things like what you are asking about. The wx.lib.floatcanvas can also be used for things like this too.