当前位置:网站首页>Wordcloud colormap color set and custom colors

Wordcloud colormap color set and custom colors

2022-07-06 17:34:00 geekqian

Blind toss series
Cough , Shameless thief copied another blog post

Reference link :

  1. https://towardsdatascience.com/how-to-create-beautiful-word-clouds-in-python-cfcf85141214
  2. https://matplotlib.org/stable/tutorials/colors/colormaps.html
  3. https://blog.csdn.net/qq_34604224/article/details/121391890
  4. https://www.datacamp.com/community/tutorials/wordcloud-python

On the first code , By designation colormap='XXX' This property can use different color sets

#  transformation 
def transform_format(val):
    if val == 0:
        return 255
    else:
        return val
        
mask = np.array(Image.open('plugins/groupword/bg.png'))
image_colors = ImageColorGenerator(mask)
#  Handle mask Invalid question 
mask = mask[:,:,0]
transformed_mask = np.ndarray((mask.shape[0],mask.shape[1]), np.int32)
for i in range(len(mask)):
    transformed_mask[i] = list(map(transform_format, mask[i]))
    
word_cloud = WordCloud(font_path="plugins/groupword/wqy-microhei.ttc",
                background_color='rgba(255, 255, 255, 0)', #  This determines the background color 
                mode='RGBA',
                colormap='Spectral',  #  Color set 
                #mask=transformed_mask,
                #color_func = image_colors, #  Determine the text color ,  Take the color of the corresponding position of the picture where the text is covered .
                #contour_width = 3, #  Border width 
                #width=800, #  Specify the length ,  Unit pixel ,  Appoint mask The post attribute does not take effect 
                #height=800,
                #max_font_size=150, #  Set font maximum 
                #random_state=30, #  Set how many randomly generated states there are , That's how many color schemes there are 
                #max_words=2000, #  Sets the maximum number of words to be displayed 
                collocations=True, #  Remove repeated words after opening 
                ).generate_from_frequencies(words)

Custom color

Custom color requirements , It should be possible to achieve : Specify a picture that contains only the colors you want to customize , use ImageColorGenerator Extract the color , Set to wordcloud, Don't use it here colormap , use color_func This parameter

from wordcloud import WordCloud,ImageColorGenerator
mask = np.array(Image.open('plugins/groupword/bg.png'))
image_colors = ImageColorGenerator(mask) #  Extract colors from pictures 

bg.png

bg.png

colormap Color set ( Reference link 2)

  1. Sequential
 ['viridis', 'plasma', 'inferno', 'magma', 'cividis']  

 Insert picture description here

['Greys', 'Purples', 'Blues', 'Greens', 'Oranges', 'Reds',
                      'YlOrBr', 'YlOrRd', 'OrRd', 'PuRd', 'RdPu', 'BuPu',
                      'GnBu', 'PuBu', 'YlGnBu', 'PuBuGn', 'BuGn', 'YlGn']

 Insert picture description here

  1. Sequential2
['binary', 'gist_yarg', 'gist_gray', 'gray', 'bone',
                      'pink', 'spring', 'summer', 'autumn', 'winter', 'cool',
                      'Wistia', 'hot', 'afmhot', 'gist_heat', 'copper']

 Insert picture description here

  1. Diverging
['PiYG', 'PRGn', 'BrBG', 'PuOr', 'RdGy', 'RdBu', 'RdYlBu',
                      'RdYlGn', 'Spectral', 'coolwarm', 'bwr', 'seismic']

 Insert picture description here

  1. Cyclic
['twilight', 'twilight_shifted', 'hsv']

 Insert picture description here

  1. Qualitative
['Pastel1', 'Pastel2', 'Paired', 'Accent', 'Dark2',
                      'Set1', 'Set2', 'Set3', 'tab10', 'tab20', 'tab20b',
                      'tab20c']

 Insert picture description here

  1. Miscellaneous
['flag', 'prism', 'ocean', 'gist_earth', 'terrain',
                      'gist_stern', 'gnuplot', 'gnuplot2', 'CMRmap',
                      'cubehelix', 'brg', 'gist_rainbow', 'rainbow', 'jet',
                      'turbo', 'nipy_spectral', 'gist_ncar']

 Insert picture description here

原网站

版权声明
本文为[geekqian]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/02/202202131311066306.html