title: vPython - gradually change colors
body: <p>I wanted to make an object change its colors according to the rainbow.
  As this did not work out I tried to visualize the problem with visual.graph:
  <img src="https://i.stack.imgur.com/bYYdb.png" alt="visual.graph">
  The color build out of the visualized colors can be seen below the x-axis.
  It does not change gradually. In case the bars should build a nice spectrum.</p>
  
  <pre><code>from visual.graph import *
  
  def regenbogenfarben(ausgangsfarbe=(255,0,0)):
      "liefert ausgehend vom input die nächste Farbe im Regenbogen"
      # vergleiche http://www.mikrocontroller.net/topic/238304
      step = 51
      r,g,b = ausgangsfarbe       # split the tuple...
      if r==255 and b==0 and g!=255:
          g+=5                # mehr grün
      elif b==0 and g==255 and r!=0:
          r-=5                # weniger rot
      elif r==0 and g==255 and b!=255:
          b+=5                # mehr blau
      elif b==255 and r==0 and g!=0:
          g-=5                # weniger grün
      elif g==0 and b==255 and r!=255:
          r+=5                # mehr rot
      elif g==0 and r==255 and b!=0:
          b-=5                # weniger blau
      #print((r,g,b))
      return r,g,b            # tupel zurückgeben
  gdisplay(background=color.white, foreground=color.black,
           ytitle="Farbanteil", xtitle="step")
  r=gcurve(color=color.red)
  g=gcurve(color=color.green)
  b=gcurve(color=color.blue)      # drei Farbanteile veranschaulichen
  
  rgb=(255,0,0)
  
  farbe=gvbars(color=color.red)   # Farbe darstellen
  
  for i in range(6*51+20):
      r.plot(pos=(i,rgb[0]))
      g.plot(pos=(i,rgb[1]))
      b.plot(pos=(i,rgb[2]))
      farbe.plot(pos=(i,-10),color=rgb)
      rgb=regenbogenfarben(rgb)
  </code></pre>