您的位置:首页 > 编程语言 > Python开发

python 生成词云

2020-02-02 00:57 756 查看
[code]#coding=utf-8
from  wordcloud import  WordCloud
import  PIL .Image as Image
import  matplotlib
import numpy as np # numpy数据处理库
import jieba # 结巴分词
import os
import time

class Post():
def __init__(self,start):
print('开始')
self.load(start)

def load(self,start):
with open('word.txt', 'r', encoding='utf-8-sig') as file_open:
content = file_open.read()
text=self.jieba_CN(content)
print(text)
mask = np.array(Image.open('2.jpg'))  # 定义词频背景
wordcloud=WordCloud(
font_path='msyh.ttc',
mask=mask,  # 设置背景图
max_words=500,  # 最多显示词数
max_font_size=70  # 字体最大值
).generate(text)
# 生成年月日时分秒时间
picture_time = time.strftime("%Y-%m-%d-%H_%M_%S", time.localtime(time.time()))
directory_time = time.strftime("%Y-%m-%d", time.localtime(time.time()))

imgsrc = '.\\' + directory_time + '\\' + picture_time + '.png'
# 获取到当前文件的目录,并检查是否有 directory_time 文件夹,如果不存在则自动新建 directory_time 文件
try:
File_Path = os.getcwd() + '\\' + directory_time + '\\'
if not os.path.exists(File_Path):
os.makedirs(File_Path)
print("目录新建成功:%s" % File_Path)
else:
print("目录已存在!!!")
except BaseException as msg:
print("新建目录失败:%s" % msg)

image_produce=wordcloud.to_image()
image_produce.show()
wordcloud.to_file(imgsrc)

def jieba_CN(self,text):
wordlist=jieba.cut(text)
result=' '.join(wordlist)
return  result

if __name__ == '__main__':
Post("statr")

 

注意事项

[code]word.txt

字体一定要,图片尽量有点轮廓的图片

生成效果

分享一个下载地址

https://download.csdn.net/download/zy1183723764/11729707

  • 点赞
  • 收藏
  • 分享
  • 文章举报
zy1183723764 发布了3 篇原创文章 · 获赞 2 · 访问量 1265 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: