文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python词云库wordcloud自定义词云制作步骤分享

2024-04-02 19:55

关注

wordcloud库常规方法

import wordcloud
c=wordcloud.WordCloud()  #构建词云对象,配置对象参数
c.generate("wordcloud by python ")  #加载词云文本
c.to_file("pywordcloud.png")      #输出词云文件

词云生成步骤:

c=wordcloud.WordCloud(参数) 配置对象参数

参数(像素)描述
width(默认400px)c=wordcloud.WordCloud(width=600)
height(默认200px)c=wordcloud.WordCloud(height=400)
min_font_size(默认4号)c=wordcloud.WordCloud(min_font_size=10)
max_font_size(根据高度自动调节)c=wordcloud.WordCloud(max_font_size=20)
font_step(默认1,步长)c=wordcloud.WordCloud(font_step=2)
font_path(默认None,字体路径)c=wordcloud.WordCloud(font_path="msyh.ttc")
max_words(默认200,最大数量)c=wordcloud.WordCloud(max_words=20)
stop_words(指定去除单词的列表)c=wordcloud.WordCloud(stop_words={"python"})
background_color(默认黑色,词云背景色)c=wordcloud.WordCloud(background_color="red")

Scale 默认值1。值越大,图像密度越大越清晰

mask参数自定义词云形状:

#指定词云形状,默认是长方形,需要引用imread()函数
from scipy.misc import imread
mk=imread("pic.png")
c=wordcloud.WordCloud(mask=mk)

第三方库

读取文件

政府工作报告词云:

import wordcloud
# 从外部.txt文件中读取大段文本,存入变量txt中
f = open('政府工作报告.txt',encoding='utf-8')
txt = f.read()
# 构建词云对象w,设置词云图片宽、高、字体、背景颜色等参数
w = wordcloud.WordCloud(width=1000,
                        height=700,
                        background_color='white',
                        font_path='msyh.ttc')
# 将txt变量传入w的generate()方法,给词云输入文字
w.generate(txt)
# 将词云图片导出到当前文件夹
w.to_file('Test1.png')

==wordcloud中文分词(适合中文词云)==

# 导入词云制作库wordcloud和中文分词库jieba
import jieba
import wordcloud
# 构建并配置词云对象w
w = wordcloud.WordCloud(width=1000,
                        height=700,
                        background_color='white',
                        font_path='msyh.ttc')
# 调用jieba的lcut()方法对原始文本进行中文分词,得到string
txt = '由于Python语言的简洁性、易读性以及可扩展性, \
      在国外用Python做科学计算的研究机构日益增多, \
      一些知名大学已经采用Python来教授程序设计课程。 \
      例如卡耐基梅隆大学的编程基础、 \
      麻省理工学院的计算机科学及编程导论就使用Python语言讲授。'
txtlist = jieba.lcut(txt)
string = " ".join(txtlist)
# 将string变量传入w的generate()方法,给词云输入文字
w.generate(string)
# w.generate(" ".join(jieba.lcut(txt)))  #三段代码合一简写
# 将词云图片导出到当前文件夹
w.to_file('Teste2.png')

自定义绘制指定形状的词云

import jieba
import wordcloud
from scipy.misc import imread
mask=imread("图片形状.png") #导入自定义形状图片赋给mask
# 从外部.txt文件中读取大段文本,存入变量txt中
f = open('政府工作报告.txt',encoding='utf-8')
txt = f.read() #阅读提取
f.close()   #关闭
# 构建词云对象w,设置词云图片宽、高、字体、背景颜色等参数
w = wordcloud.WordCloud(width=1000,
                        height=700,
                        background_color='white',mask=mask,
                        font_path='msyh.ttc')
# 将txt变量传入w的generate()方法,给词云输入文字
w.generate(" ".join(jieba.lcut(txt)))
# 将词云图片导出到当前文件夹
w.to_file('Test1.png')

==勾勒词云轮廓==

# 导入词云制作库wordcloud
import wordcloud
# 将外部文件包含的文本保存在string变量中
string = open('hamlet.txt').read()
# 导入imageio库中的imread函数,并用这个函数读取本地图片,作为词云形状图片
import imageio
mk = imageio.imread("ren.png")
# 构建词云对象w,注意增加参数contour_width和contour_color设置轮廓宽度和颜色
w = wordcloud.WordCloud(background_color="white",
                        mask=mk,
                        contour_width=1,
                        contour_color='steelblue'
                        )
# # 将string变量传入w的generate()方法,给词云输入文字
w.generate(string)
# 将词云图片导出到当前文件夹
w.to_file('p2.png')

==按模板自身颜色绘制词云==

# 导入绘图库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.png")

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

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

# 显示原生词云图、按模板图片颜色的词云图和模板图片,按左、中、右显示
fig, axes = plt.subplots(1, 3)
# 最左边的图片显示原生词云图
axes[0].imshow(wc)
# 中间的图片显示按模板图片颜色生成的词云图,采用双线性插值的方法显示颜色
axes[1].imshow(wc.recolor(color_func=image_colors), interpolation="bilinear")
# 右边的图片显示模板图片
axes[2].imshow(mk, cmap=plt.cm.gray)
for ax in axes:
    ax.set_axis_off()
plt.show()

# 给词云对象按模板图片的颜色重新上色
wc_color = wc.recolor(color_func=image_colors)
# 将词云图片导出到当前文件夹
wc_color.to_file('out-alice.png')

到此这篇关于python词云库wordcloud自定义词云制作步骤分享的文章就介绍到这了,更多相关python wordcloud词云制作内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯