docs: def visualize_cloud_of_words(dictionary, image_path=None):
          """
          Renders the cloud of words representation for a given dictionary of frequencies
  
          :param dictionary: the dictionary object that contains key-frequency pairs
          :param image_path: the path to the image mask, None if no masking is needed
  
          """
          from PIL import Image
  
          if image_path is not None:
              mask = np.array(Image.open(image_path))
              wc = WordCloud(mask=mask, background_color='white', width=1600, height=1200, prefer_horizontal=0.8)
              wc = wc.generate_from_frequencies(dictionary)
          else:
              # Generate a word cloud image
              wc = WordCloud(background_color='white', width=1600, height=1200, prefer_horizontal=0.8)
              wc = wc.generate_from_frequencies(dictionary)
  
          # Display the generated image:
          # the matplotlib way:
          import matplotlib.pyplot as plt
          plt.rcParams['figure.figsize'] = (15, 15)
          plt.imshow(wc, interpolation='bilinear')
          plt.axis("off")
          plt.show()