wordcloud

# _*_ coding=utf-8 _*_

import jieba
from wordcloud import WordCloud
from matplotlib import pyplot as plt
from PIL import Image
import numpy as np


# 1 打开需要制作云图的txt文件,读取内容,并关闭文件
f = open('nwt.txt', 'r', encoding='utf-16LE')  # 文档可以先用pycharm或者notepad+++读取,然后看右下角的编码格式
lines = f.readlines()
lines1 = lines[1::3]   # 分析数据,抓住数据规律,截取数据
content = str(lines1)
f.close()
# 2 结巴分解
content1 = jieba.cut(content, cut_all=True)
content_after = " ".join(content1)

# 3 把你需要用到的形状图片用Image方法打开,然后用numpy转换了一下
images = Image.open("xin.png")
maskImages = np.array(images)
# 4 生成图片
wc = WordCloud(font_path="C:/Windows/Fonts/simfang.ttf", background_color="white", max_words=100,
               max_font_size=100, width=650, height=500, stopwords=None, relative_scaling=0.5,
               mask=maskImages).generate(content_after)
plt.imshow(wc)
# 5 保存图片
wc.to_file('xin2.png')

'''
载入词典
· 开发者可以指定自己自定义的词典,以便包含 jieba 词库里没有的词。虽然 jieba 有新词识别能力,
但是自行添加新词可以保证更高的正确率

· 用法: jieba.load_userdict(file_name) # file_name 为文件类对象或自定义词典的路径

· 词典格式和 dict.txt 一样,一个词占一行;每一行分三部分:词语、词频(可省略)、词性(可省略),
用空格隔开,顺序不可颠倒。file_name 若为路径或二进制方式打开的文件,则文件必须为 UTF-8 编码。

· 词频省略时使用自动计算的能保证分出该词的词频。
'''

# _*_ coding=utf-8 _*_

import jieba
from wordcloud import WordCloud
from matplotlib import pyplot as plt
from PIL import Image
import numpy as np


# 1 打开需要制作云图的txt文件,读取内容,并关闭文件
f = open('nwt.txt', 'r', encoding='utf-16LE')  # 文档可以先用pycharm读取,然后看右下角的编码格式
lines = f.readlines()
lines1 = lines[0::3]
content = str(lines1)
f.close()
# print(content)
# 2 结巴添加名字字典
jieba.load_userdict('name1.txt')

# 3 结巴分解
content1 = jieba.cut(content, cut_all=True)
content_after = " ".join(content1)

# 4 把你需要用到的形状图片用Image方法打开,然后用numpy转换了一下
images = Image.open("xin.png")
maskImages = np.array(images)
# 5 生成图片
wc = WordCloud(font_path="C:/Windows/Fonts/simfang.ttf", background_color="white", max_words=60,
               max_font_size=150, width=650, height=500, stopwords=None, relative_scaling=0.5,
               mask=maskImages).generate(content_after)
plt.imshow(wc)
# 6保存图片
wc.to_file('xin3.png')

猜你喜欢

转载自blog.csdn.net/qq_43014129/article/details/83003074