python词云制作

一、制作简单词云

1.依赖

  • pip install wordcloud
  • pip install jieba

2.使用

1.实例化一个词云对象

  • woc = wordcloud.WordCloud()

2.根据文本生成词云

  • woc.generate()

3.根据词频生成词云

  • woc.generate_from_frequencies()

4.以文件的形式保存

  • woc.to_file()

3.实例

# 实例化一个词云对象
woc = wordcloud.WordCloud(background_color='white',  # 背景颜色
                          font_path=r'C:\Windows\Fonts\msyh.ttc',  # 字体
                          scale=15,  # 清晰度
                          mask=None  # 背景样式
                          )

# 词频
china_dic = 
{'上海': 56,
 '云南': 80,
 '内蒙古': 3,
 '北京': 10,
 '台湾': 31,
 '吉林': 0,
 '四川': 18,
 '天津': 7,
 '宁夏': 0,
 '安徽': 0,
 '山东': 7,
 '山西': 9,
 '广东': 47,
 '广西': 3,
 '新疆': 0,
 '江苏': 8,
 '江西': 0,
 '河北': 0,
 '河南': 5,
 '浙江': 7,
 '海南': 4,
 '湖北': 3,
 '湖南': 4,
 '澳门': 1,
 '甘肃': 1,
 '福建': 26,
 '西藏': 0,
 '贵州': 0,
 '辽宁': 1,
 '重庆': 0,
 '陕西': 18,
 '青海': 0,
 '香港': 212,
 '黑龙江': 0}

# 根据词频生成词云
woc.generate_from_frequencies(frequencies=china_dic)
# 生成词云图片
woc.to_file('test.png')

二、绘制指定形状的词云

1.依赖

  • pip install imageio

2.使用

2.1生成图片对象

  • mk = imageio.imread(“wujiaoxing.png”)

2.2将图片对象复制给词云对象的mask参数

  • woc = wordcloud.WordCloud(mask=mk)

2.3按模板填色

  • from wordcloud import ImageColorGenerator
  • image_colors = ImageColorGenerator(mk)

2.4给词云图片按模板重新上色

  • wc_color = woc.recolor(color_func=image_colors)

3.实例

# 导入绘图库matplotlib和词云制作库wordcloud
import matplotlib.pyplot as plt
from wordcloud import WordCloud,ImageColorGenerator

# 将外部文件包含的文本保存在text变量中
text = open('alice.txt').read()

# 导入imageio库中的imread函数,并用这个函数读取本地图片queen2.jfif,作为词云形状图片
import imageio
mk = imageio.imread("alice_color.png")

# 构建词云对象w
wc = WordCloud(background_color="white",
               mask=mk,)
# 将text字符串变量传入w的generate()方法,给词云输入文字
wc.generate(text)

# 调用wordcloud库中的ImageColorGenerator()函数,提取模板图片各部分的颜色
image_colors = ImageColorGenerator(mk)

# 给词云对象按模板图片的颜色重新上色
wc_color = wc.recolor(color_func=image_colors)
# 将词云图片导出到当前文件夹
wc_color.to_file('output10-alice.png')
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值