Physical processes and algorithms that are dynamic in nature can be visualised by creating illustrations of moving objects. When used in teaching situations, such illustrations are an alternative to drawing rough figures on a blackboard or using an overhead. With a high degree of interactive control through a graphical user interface, the impact of parameters (physical or mathematical) on a system can be investigated with immediate results. This will often lead to a quicker way to learn and to increased understanding. The purpose of this paper is to present a set of software tools (modules) that can be used to create illustrations with abstract, high-level programming using Python and Tkinter/Pmw/Blt. In addition several applications from subjects such as mechanics, informatics and numerical analysis are considered. The applications will show that using Python and these tools will make it possible for non-experts to create interactive, dynamic, visual illustrations.
Python is a high-level object-oriented scripting language with a very clean and readable syntax. It is equipped with powerful built in data types, making it easy to built nested data structures, which is a greatly valued ability. If execution speed is essential, program code may be written in Fortran, C or C++, and made available through normal Python code. With toolkits such as Tkinter and Pmw, professional looking graphical user interfaces (GUIs) are easily created. This latter ability is exactly what we need to create visual illustrations. Python is also platform independent, and may be ported between different operating systems.
My experience is that using Python with a set of specialised tools leads to short, readable code with more opportunities than restrictions. With a high level of code re-use, many new applications can be very swiftly coded. If we take into consideration that it only takes a couple of hours to learn to use Python productively, it should be very well suited, even for non-programming-experts. All of the applications are taken from subjects that are teached at an undergraduate level. It is perhaps at this level the effects of visual imaging are most effectful, or maybe most needed. In my opinion, most of the applications could be taken into the classroom and used directly, without further improvements, but more importantly it should inspire teachers to create their own illustrations.