日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

词云(WordCloud)制作

發布時間:2024/7/5 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 词云(WordCloud)制作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

以《神雕俠侶》為例,我們制作詞云,看看有哪些高頻詞匯。

1. 導入一些包

# -*- coding:utf-8 -*- # @Python Version: 3.7 # @Time: 2020/11/27 19:32 # @Author: Michael Ming # @Website: https://michael.blog.csdn.net/ # @File: word_cloud.py # @Reference: import jieba import numpy as np from PIL import Image from wordcloud import WordCloud

2. 文本處理

  • 去掉一些空白的字符\n, \t, ' '等
  • jieba.cut分詞
  • 屏蔽停用詞,以及長度小于2的詞
stopwords = [] with open("stopwords.txt", 'r', encoding='utf-8') as f:for w in f:stopwords.append(w.replace('\n', ''))with open('processed_txt.txt', 'w', encoding='utf-8') as processed:words_list = []with open("../shendiaoxialv.txt", 'r', encoding='utf-8') as f:for line in f:word = jieba.cut(line.replace('\t', '').replace('\n', '').replace(' ', ''))for w in word:if w not in stopwords and len(w) > 1:words_list.append(w)processed.write(' '.join(words_list))

3. 制作詞云

# 讀取清理好了以后的詞 wordtxt = "" with open('processed_txt.txt', 'r', encoding='utf-8') as f:wordtxt = f.read()# 設置背景圖片,也可以沒有 background_pic = np.array(Image.open('background.png')) wc = WordCloud(background_color='white', # 背景色max_words=300, # 最多詞語數量font_path='wb.ttf', # 字體min_font_size=12, # 最小字號max_font_size=52, # 最大字號width=1600, # 圖片寬度height=1200, # 圖片高度mask=background_pic # 背景形狀 )wc.generate(wordtxt) wc.to_file("wc.jpg")

使用以下背景圖片:

生成詞云:

可以看見 楊過 和 小龍女 是最顯眼的兩個詞語,也是小說的主角。

再換一個背景圖片:

調節最小10號字,最大100號的字,生成詞云:

總結

以上是生活随笔為你收集整理的词云(WordCloud)制作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。