python做词云做文本处理_文本挖掘——python词云实现

# -*- coding: utf-8 -*-

#wordcloud生成中文词云

from wordcloud import WordCloud

import codecs

import jieba

#import jieba.analyse as analyse

from scipy.misc import imread

import os

from os import path

import matplotlib.pyplot as plt

from PIL import Image, ImageDraw, ImageFont

# 绘制词云

def draw_wordcloud():

#读入一个txt文件

comment_text = open('C:\\Users\\Desktop\\neg.txt','r').read()

#结巴分词,生成字符串,如果不通过分词,无法直接生成正确的中文词云

cut_text = " ".join(jieba.cut(comment_text))

#print(cut_text)

d = path.dirname(__file__) # 当前文件文件夹所在目录

color_mask = imread("C:\\Users\\Desktop\\t.jpg") # 读取背景图片

cloud = WordCloud(

#设置字体,不指定就会出现乱码

font_path=os.environ.get("FONT_PATH", os.path.join(os.path.dirname(__file__),"simkai.ttf")),

prefer_horizontal=1.0,

#font_path=path.join(d,'simsun.ttc'),

#设置背景色

background_color='black',

#词云形状

#mask=color_mask,

#允许最大词汇

max_words=1000,

#color_func=yellow,

#font_step=1,#

#relative_scaling=0.8,#词频和字体大小的关联性

#最大号字体

#collocations=True#是否包括两个词的搭配

min_font_size=10,

max_font_size=45

)

word_cloud = cloud.generate(cut_text) # 产生词云

word_cloud.to_file("pjl_cloud4.jpg") #保存图片

#  显示词云图片

plt.imshow(word_cloud)

plt.axis('off')

plt.show()

plt.close()

if __name__ == '__main__':

draw_wordcloud()

你可能感兴趣的:(python做词云做文本处理)