I used a similar strategy when creating this image:
https://commons.wikimedia.org/wiki/File:Graphical_projection_comparison.png
The main image was rendered in POV-Ray. I then converted the important
coordinates from 3D to 2D, and built the arrows and text on top using
GeoGebra.
Mike