input: Write a function to visually summarize the Twitter data using Python and Matplotlib. The Twitter data is a stream of tweets with fields like tweet author, date of tweet, text, number of likes, and number of retweets. The function should process this data to extract relevant fields and produce three plots: one summarizing the number of tweets per author, one summarizing the number of likes per tweet, and one summarizing the number of retweets per tweet. Return True if the plots are successfully generated, otherwise return False. If the input data is empty then return True.
  
  
  import matplotlib.pyplot as plt
  
  def summarize_twitter_data(data):
      if not data:
          return True
      
      # Process the Twitter data to extract relevant fields
      authors = []
      num_tweets = []
      num_likes = []
      num_retweets = []
      
      for tweet in data:
          authors.append(tweet['author'])
          num_tweets.append(1)
          num_likes.append(tweet['likes'])
          num_retweets.append(tweet['retweets'])
      
      # Plot the tweet authors
      plt.xlabel('Tweet Authors')
      plt.ylabel('Number of tweets')
      plt.title('Tweet Author Summary')
      plt.bar(authors, num_tweets)
      plt.show()
      
      # Plot the number of likes
      plt.xlabel('Tweets')
      plt.ylabel('Number of Likes')
      plt.title('Number of Likes Summary')
      plt.bar(range(len(data)), num_likes)
      plt.show()
      
      # Plot the number of retweets
      plt.xlabel('Tweets')
      plt.ylabel('Number of Retweets')
      plt.title('Number of Retweets Summary')
      plt.bar(range(len(data)), num_retweets)
      plt.show()
      
      return True
  
  # Test cases
  assert summarize_twitter_data([{'author': 'User1', 'likes': 10, 'retweets': 5}, {'author': 'User2', 'likes': 20, 'retweets': 8}]) == True
  assert summarize_twitter_data([]) == True
  assert summarize_twitter_data([{'author': 'User1', 'likes': 15, 'retweets': 10}, {'author': 'User1', 'likes': 25, 'retweets': 15}, {'author': 'User2', 'likes': 30, 'retweets': 20}]) == True
  
output: 
  def summarize_twitter_data(data):
      if not data:
          return True
      
      authors = []
      num_tweets = []
      num_likes = []
      num_retweets = []
      
      for tweet in data:
          authors.append(tweet['author'])
          num_tweets.append(1)
          num_likes.append(tweet['likes'])
          num_retweets.append(tweet['retweets'])
      
      plt.xlabel('Tweet Authors')
      plt.ylabel('Number of tweets')
      plt.title('Tweet Author Summary')
      plt.bar(authors, num_tweets)
      plt.show()
      
      plt.xlabel('Tweets')
      plt.ylabel('Number of Likes')
      plt.title('Number of Likes Summary')
      plt.bar(range(len(data)), num_likes)
      plt.show()
      
      plt.xlabel('Tweets')
      plt.ylabel('Number of Retweets')
      plt.title('Number of Retweets Summary')
      plt.bar(range(len(data)), num_retweets)
      plt.show()
      
      return True
  