python+wordcloud,工作需要人生第一段python,词云

为啥网上找的词云计数,都把元素分成单个字了,还好我机智,用笨办法字典相加,
非程序猿工作用到可以来看啊,像我这样的搜百度能搜到(用的是anaconda),
努力写个界面让同事自己上传下载,好难
不知道分哪类。。。。
rreason.txt里的一段内容,分词保存到rrcut.txt和rrcut.jpg


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

datapath = “E:\临时处理\”
with open(datapath + “rreason.txt”,‘r’,encoding=‘utf-8’) as f:
string_data = f.read()

text = " ".join(jieba.cut(string_data,cut_all=True))
llist = text.split()

remove_words = [u’了’,u’\n’,u’ ‘,u’,’,u’,’]

for word in llist:
for i in range(len(remove_words)):
if word == remove_words[i]:
llist.remove(word)

sett = set(llist)
dict = {}
for item in sett:
dict.update({item:llist.count(item)})
dic={}
for k,v in dict.items():
dic[k] = v

with open(datapath + “rrcut%s.txt”%time.strftime("%m%d %H",time.localtime()),‘w’,encoding=‘utf-8’) as f:
for d,v in dic.items():
f.write(d + “,” + str(v) + ‘\n’)

llist = " “.join(llist)
#mask = np.array(Image.open(“E:\临时处\4a0e74e7ly1g2muafkv0tj21o02yo7wh.jpg”))
cloud = WordCloud(font_path=”.\fonts\simhei.ttf",
collocations=False,
background_color=‘white’,
width=400,
height=300,
#mask=mask,
max_words=100,
max_font_size=50,
scale=8)

wcloud = cloud.generate(llist)
wcloud.to_file(datapath + “rrcut%s.jpg”%time.strftime("%m-%d %H",time.localtime()))
plt.imshow(wcloud,interpolation=‘bilinear’)
plt.axis(“off”)
plt.show()


remove_words列表为啥加个u
注释的是可以自己选择背景图片

好的,使用Python实现词云图功能可以使用第三方库wordcloud和jieba。 安装依赖库: ``` pip install wordcloud pip install jieba ``` 示例代码: ```python import jieba from wordcloud import WordCloud import matplotlib.pyplot as plt # 读取文本内容 with open('example.txt', 'r', encoding='utf-8') as f: content = f.read() # 使用jieba分词 words = jieba.cut(content) # 过滤掉单个字和停用词 stopwords = ['的', '了', '是', '我', '你', '他', '她', '我们', '你们', '他们', '这', '那', '就是', '但是', '和', '也', '吧', '啊'] filtered_words = [word for word in words if len(word) > 1 and word not in stopwords] # 拼接为字符串 text = ' '.join(filtered_words) # 生成词云图 wc = WordCloud(width=800, height=400, background_color='white', font_path='msyh.ttc').generate(text) # 显示词云图 plt.imshow(wc, interpolation='bilinear') plt.axis('off') plt.show() # 保存词云图 wc.to_file('wordcloud.png') ``` 说明: - 示例代码中,读取的文本文件为`example.txt`,可以替换为自己的文本文件; - `jieba.cut()`函数用于对文本进行分词,返回的是一个可迭代的生成器对象; - `stopwords`为停用词列表,可以根据需要自行修改; - `WordCloud()`函数用于生成词云图,其中`width`和`height`分别指定词云图的宽和高,`background_color`指定背景颜色,`font_path`指定字体文件路径; - `imshow()`函数用于显示词云图; - `to_file()`函数用于保存词云图,保存路径为`wordcloud.png`,可以根据需要修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值