For a more unified user experience, all the overhead (creating of the figure, axis properties etc.) could potentially be handled in the pyIDI.show_points method.
The created figure / axis could then be passed to the IDIMethod's show_points method, which would handle only the actual drawing of the points and ROIs.