VPython's fame is with 3D animated modeling, but it's plotting abilities, while not flashy, are easy to understand and very useful. This program uses VPython to plot math functions y = sin(x) and y = cos(x) and y = sin(x)*cos(x).

# simple plotting with VPython from http://vpython.org
# for the Windows version and Python24 download: VPython-Win-Py2.4-3.2.3b.exe
# tested with Python24    vegaseat    01sep2005

str1 = "blue is sin(x), red is cos(x), green is sin(x)*cos(x)"

import visual.graph as vg

# set up the plot display, if xmax,xmin,ymax,ymin are not specified then default is autoscale
graph1 = vg.gdisplay(x=0, y=0, width=600, height=350, title = str1, xtitle='x', ytitle='y',
          xmax=5.0, xmin=-5.0, ymax=1.1, ymin=-1.1, foreground=vg.color.black, background=vg.color.white)

# gcurve() draws a line
y1 = vg.gcurve(color=vg.color.blue)
y2 = vg.gcurve(color=vg.color.red)
y3 = vg.gcurve(color=vg.color.green)

# arange() is like range() with floating point values
for x in vg.arange(-5, 5, 0.1):
    y1.plot( pos=(x, vg.sin(x)) )
    y2.plot( pos=(x, vg.cos(x)) )
    y3.plot( pos=(x, vg.sin(x)*vg.cos(x)) )
About the Author