一、Windows安装python及jupyter notebook
1.在python官网上下载python并安装,详见:
https://wwwblogs/wyqzh/p/11791388.html
2.安装jupyter notebook:打开命令行,输入
pip install jupyter notebook
按下回车就可以安装了。
二、安装必要的库
1.安装wordcloud库
打开网站:https://www.lfd.uci.edu/~gohlke/pythonlibs/
在安装包位置打开命令行,输入:
pip install wordcloud-1.8.1-cp310-cp310-win_amd64.whl
2.安装jieba库
在命令行中输入:
pip install jieba
3.安装pandas库:
在命令行中输入:
pip install pandas
三、已知文本绘制词云图
#导入必要的库
import wordcloud as wc
import random
import jieba
from PIL import Image
import numpy as np
#打开文本文件text.txt
with open("text.txt",mode="r",encoding="utf-8") as fp:
content = fp.read()
res = jieba.lcut(content)
text = " ".join(res)
#设置背景形状图片
mask = np.array(Image.open("fivestar.png"))
#设置停用词
stopwords = set()
content = [line.strip() for line in open('stopwords.txt','r').readlines()]
stopwords.update(content)
#画图
word_cloud = wc.WordCloud(font_path="C:\Windows\Fonts\msyh.ttc",mask=mask,stopwords = stopwords)#字体、背景形状
word_cloud.generate(text)
word_cloud.to_file("a.png")#绘制到一个图片里
四、已知词及词频,读取csv画词云图
import numpy as np
import pandas as pd
from wordcloud import WordCloud, ImageColorGenerator
from PIL import Image
def draw_cloud(read_name):
image = Image.open('fivestar.png') # 作为背景轮廓图
graph = np.array(image)
# 参数分别是指定字体、背景颜色、最大的词的大小、使用给定图作为背景形状
wc = WordCloud(font_path='msyh.ttc',background_color='white',max_words=100, mask=graph)
fp = pd.read_csv(read_name, encoding='gbk') # 读取词频文件, 因为要显示中文,故编码为gbk
name = list(fp.name) # 词
value = fp.val # 词的频率
for i in range(len(name)):
name[i] = str(name[i])
dic = dict(zip(name, value)) # 词频以字典形式存储
wc.generate_from_frequencies(dic) # 根据给定词频生成词云
image_color = ImageColorGenerator(graph)#生成词云的颜色
wc.to_file('词云.png') # 图片命名
if __name__ == '__main__':
draw_cloud("1.csv")
更多推荐
python词云图详细教程
发布评论