input: Write a function to summarize the Twitter data visually using matplotlib. The function should process the Twitter data to extract relevant data fields and plot the tweet authors with the number of tweets, the number of likes for each tweet, and the number of retweets for each tweet. The function should return None.
  assert summarize_twitter_data([{'author': 'user1', 'likes': 10, 'retweets': 5}, {'author': 'user2', 'likes': 15, 'retweets': 3}]) == None
  assert summarize_twitter_data([{'author': 'user3', 'likes': 20, 'retweets': 7}, {'author': 'user4', 'likes': 25, 'retweets': 2}]) == None
  assert summarize_twitter_data([]) == None
output: def summarize_twitter_data(data):
      if not data:
          return None
      
      authors = [tweet['author'] for tweet in data]
      likes = [tweet['likes'] for tweet in data]
      retweets = [tweet['retweets'] for tweet in data]
      
      fig, ax = plt.subplots(3, 1, figsize=(10, 15))
      
      ax[0].bar(authors, likes, color='blue')
      ax[0].set_title('Number of Likes per Tweet')
      ax[0].set_ylabel('Likes')
      
      ax[1].bar(authors, retweets, color='green')
      ax[1].set_title('Number of Retweets per Tweet')
      ax[1].set_ylabel('Retweets')
      
      ax[2].bar(authors, [likes[i] + retweets[i] for i in range(len(authors))], color='red')
      ax[2].set_title('Total Engagement per Tweet')
      ax[2].set_ylabel('Engagement (Likes + Retweets)')
      
      plt.tight_layout()
      plt.show()
      
      return None