用python生成词云

本文代码和大体思路参考自:
https://blog.csdn.net/FireMicrocosm/article/details/81067003

准备工作

jieba:中文分词工具(关于Jieba上一篇博客里面有简单的使用介绍)
wordcloud:Python下的词云生成工具
一份txt文档(文字数量别太少)一张背景图 随便找都可以
我用的背景图

代码示例

# -*- coding: utf-8 -*-
# @Time : 2019/12/12 16:52
# @Author : Zhanghui

import jieba
# pip install opencv-python
import cv2
import matplotlib.pyplot as plt
from wordcloud import WordCloud

with open('text.txt','r',encoding='UTF-8') as f:
    text = f.read()
#     利用jieba分词的精确模式进行分词
# jieba.load_userdict('dict.txt')
cut_text = " ".join(jieba.cut(text))
# cv2.imread()接口读图像,读进来直接是BGR 格式数据格式在 0~255,通道格式为(W,H,C)
color_mask = cv2.imread('background.jpg')

cloud = WordCloud(
#     设置字体,不指定会产生乱码(在c盘的隐藏文件夹里)
     font_path=" C:\\Windows\\Fonts\\STXINGKA.TTF",
#     设置背景颜色
    background_color='white',
#     词云形状
    mask=color_mask,
#     允许最大词汇量
    max_words=2000,
#     最大号字体
    max_font_size=40
)

wCloud = cloud.generate(cut_text)

wCloud.to_file('cloud.jpg')

plt.imshow(wCloud, interpolation='bilinear')

# 关闭坐标系
plt.axis('off')

plt.show()

在这里插入图片描述
新手入坑,如有错误,请多指教

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值