title: How to update plot title with matplotlib using animation?
body: <p>Below my code. Why doesn't title updates every tick? I read this: <a href="https://stackoverflow.com/questions/39644461/matplotlib-animation-with-blit-how-to-update-plot-title">Matplotlib animation with blit -- how to update plot title?</a> but it wasn't useful.</p>
  
  <pre><code>#! /usr/bin/python3
  import matplotlib
  import numpy as np
  import matplotlib.pyplot as plt
  import matplotlib.animation as animation
  import time
  import random as rr
  
  plt.rc('grid', color='#397939', linewidth=1, linestyle='-')
  plt.rc('xtick', labelsize=10)
  plt.rc('ytick', labelsize=5)
  
  width, height = matplotlib.rcParams['figure.figsize']
  size = min(width, height)
  fig = plt.figure(figsize=(size, size))
  ax = fig.add_axes([0.1, 0.1, 0.8, 0.8], polar=True, facecolor='#cfd98c')
  
  ax.set_rmax(20.0)
  plt.grid(True)
  plt.title("")
  def data_gen(t=0):
      tw = 0
      phase = 0
      ctn = 0
      while True:
          ctn += 1
          if ctn == 1000:
              phase=round(rr.uniform(0,180),0)
              tw = round(rr.uniform(0,20),0)
              ctn = 0
              yield tw, phase
  def update(data):
      tw, phase = data
      print(data)
      ax.set_title("|TW| = {}, Angle: {}°".format(tw, phase)) 
      arr1 = plt.arrow(phase, 0, 0, tw, alpha = 0.5, width = 0.080,
               edgecolor = 'red', facecolor = 'red', lw = 2, zorder = 5)
      return arr1,
  
  ani = animation.FuncAnimation(fig, update, data_gen, interval=100, blit=True, repeat=False)
  plt.show()
  </code></pre>
  
  <p><strong>EDIT n. 1</strong>
  After @eyllanesc answer, I edit this piece of code:</p>
  
  <pre><code>def data_gen(t=0):
      tw = 10
      phase = 0
      ctn = 0
      while True:
          if phase &lt; 2*180:
              phase += 1
          else:
              phase=0
          yield tw, phase
  
  def update(data):
      tw, phase = data
      angolo = phase /180 * np.pi
      print("|TW| = {}, Angle = {}°".format(tw,phase))
      ax.set_title("|TW| = {}, Angle: {}°".format(tw, phase)) 
      arr1 = plt.arrow(angolo, 0, 0, tw, alpha = 0.5, width = 0.080, edgecolor = 'red', facecolor = 'red', lw = 2, zorder = 5)
      plt.draw()
      return arr1,
  </code></pre>
  
  <p>Now text works correctly, but the arrow updating is not "fluid" (it appeares and disappeares every update).</p>