title: Graph figure not displayed when live plotting arduino data with matplotlib
body: <p>I am trying to plot real-time lectures from Arduino UNO's analogue input with matplotlib.
  My problem: The graph would not be shown. Only when I stop running the code (Ctrl+C), It will show the last values's graph.</p>
  
  <p>when adding "print pData" line to the code in order to check whether the values are properly arriving to the computer, these are correctly displayed (shows the 25 values array each second) on the python terminal. </p>
  
  <pre><code>#!/usr/bin/python
  
  from matplotlib import pyplot
  import pyfirmata
  from time import sleep
  
  # Associate port and board with pyFirmata
  port = '/dev/ttyACM0'
  board = pyfirmata.Arduino(port)
  
  # Using iterator thread to avoid buffer overflow
  it = pyfirmata.util.Iterator(board)
  it.start()
  
  # Assign a role and variable to analog pin 0 
  a0 = board.get_pin('a:0:i')
  
  pyplot.ion()
  
  pData = [0.0] * 25
  fig = pyplot.figure()
  pyplot.title('Real-time Potentiometer reading')
  ax1 = pyplot.axes()
  l1, = pyplot.plot(pData)
  pyplot.ylim([0, 1])
  
  while True:
      try:
          sleep(1)
          pData.append(float(a0.read()))
          pyplot.ylim([0, 1])
          del pData[0]
          l1.set_xdata([i for i in xrange(25)])
          l1.set_ydata(pData)  # update the data
          #print pData
          pyplot.draw()  # update the plot
      except KeyboardInterrupt:
          board.exit()
          break
  </code></pre>