Python词云绘制


在这里插入图片描述

效果展示以及准备工作:

效果展示图:
在这里插入图片描述
准备工作

  • pycharm安装第三方库numpy,jieba,wordcloud
  • 词云文本的准备(.txt)
  • 背景图的准备(我是用的PS

利用pycharm安装第三方库的讲解:
(个人感觉比在终端pip下载更方便)

在这里插入图片描述
背景图准备

  • 百度随便找一张
  • 利用PS把背景调成纯白色,其人物图形涂改为其他任意纯色
    如下:
    在这里插入图片描述

进入代码书写

首先把其文本和背景图片放入该Python文件中
在这里插入图片描述

文本和图片放入的方法步骤:
在这里插入图片描述
在这里插入图片描述
点击复制该文件的路径,在文件管理粘贴打开其文件,把文本和图片复制粘贴到其对应文件就行了

在这里插入图片描述

思路:

  • 打开文本
  • 利用正则对其进行特殊符号删除
  • 利用jieba对其文本进行分词
  • 统计词语的出现次数,并sorted排序
  • 利用字典,del过滤不想要的词
  • 最后利用wordcloud库进行词云制作

调用的库操作

import string
import jieba
import numpy as np
from PIL import Image
from matplotlib import colors
import re
import matplotlib.pyplot as plt
from wordcloud import  WordCloud

文件操作

mask=np.array(Image.open('1.png')) # 导入图片

txt=open(r'新时代中国特色社会主义.txt',mode='r',encoding="utf-8")
#打开文本,编码格式为utf-8
txt1=txt.read()#原始文本
txt2=re.sub(r'[^\u4e00-\u9fa5]','',txt1)
# 利用正则,删除特殊符号
txt3=jieba.cut(txt2)#可迭代对象  分词
txt4={}
for i in txt3:
    if i not in txt4:
        txt4[i]=1
    else:
        txt4[i]+=1
txt5=sorted(txt4.items(),key=lambda x:x[0],reverse=True)
# 统计词语出现次数,并排序
txt6={}
for word,count in txt5:
    txt6[word]=count
list=["的","是","和"]# 过滤器
for i in list:
    del txt6[i]

wordcloud

wordcloud=WordCloud(
    background_color='white',#背景
    font_path='simsun.ttc',#字体
    max_words=400,#最大数量
    mask=mask,
    max_font_size=90,#最大字号
    width=400,#宽
    height=400,#高
).generate_from_frequencies(txt6)
plt.figure(figsize=(8,8))
plt.imshow(wordcloud,interpolation='bilinear')
plt.axis('off')#关闭坐标轴
plt.show()
wordcloud.to_file('词云.png')

之后就可以正常制作词云了

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汴京城下君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值