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

目录
  • wordcloud库常规方法
  • 第三方库
  • 读取文件
  • 自定义绘制指定形状的词云

wordcloud库常规方法

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

词云生成步骤:

  • 分隔:以空格分隔单词
  • 统计:单词出现次数并过滤(1-2个字母会被滤掉)
  • 字体:根据统计配置字号
  • 布局:颜色环境尺寸

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)

第三方库

  • numpy :多维数组运算
  • matplotlib :绘图与数据可视化
  • pillow :图片处理
  • wordcloud :词云制作
  • imageio :图像输入输出
  • jieba :中文分词
  • snownlp :中文情感和自然语言处理
  • itchat :微信好友抓取

读取文件

政府工作报告词云:

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词云制作内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)

    思维导图: 效果(语句版): 源码: # -*- coding: utf-8 -*- """ Created on Tue Mar 5 17:59:29 2019 @author: dell """ # ============================================================================= # 步骤: # 分割aaa = jieba.cut(str,cut_all=True/Fa

  • python词云库wordcloud的使用方法与实例详解

    wordcloud是优秀的词云展示第三方库 一.基本使用 import jieba import wordcloud txt = open("1.txt", "r", encoding='utf-8').read() words = jieba.lcut(txt) txt_1 = " ".join(words) # print(txt1) w = wordcloud.WordCloud(font_path="msyh.ttc"

  • Python基于wordcloud及jieba实现中国地图词云图

    热词图很酷炫,也非常适合热点事件,抓住重点,以图文结合的方式表现出来,很有冲击力.下面这段代码是制作热词图的,用到了以下技术: jieba,把文本分词 wordcloud,制作热图 chardet,辨别文件的编码格式,其中中文统一为GB18030,更加的兼容 imageio,提取图片的形状 其他:自动识别文件编码,自动识别txt文件,图片文件名与txt文件一致,使用的是四大名著的文本(自行百度),部分中国地图 上代码: import os import jieba import wordclou

  • Python中的wordcloud库安装问题及解决方法

    今天下载wordcloud的时候出现了很多问题,在此总结总结 1.问题一:You are using pip version 19.0.3, however version 20.0.2 is available-问题 解决方法: 打开cmd输入如下命令 python -m pip install -U pip 2.问题二:error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual 解决方法: 方法1(不

  • Python基于WordCloud制作词云图

    这篇文章主要介绍了python基于WordCloud制作词云图,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1. 导入需要的包package import matplotlib.pyplot as plt from scipy.misc import imread from wordcloud import WordCloud,STOPWORDS import xlrd 2. 设置生成词云图的背景图片,最好是分辨率高且色彩边界分明的图片 de

  • Python 制作词云的WordCloud参数用法说明

    场景 官方API: https://amueller.github.io/word_cloud/generated/wordcloud.WordCloud.html 实现 font_path : string #字体路径,需要展现什么字体就把该字体路径+后缀名写上,如:font_path = '黑体.ttf' width : int (default=400) #输出的画布宽度,默认为400像素 height : int (default=200) #输出的画布高度,默认为200像素 prefe

  • Python WordCloud 修改色调的实现方式

    在绘制词云图时发现有的字颜色为黄色导致看不清因此需要修改整个词云图的色调为冷色调 具体的来说 wordcloud中的color_func 参数使得我们能够自定义颜色函数 def random_color_func(word=None, font_size=None, position=None, orientation=None, font_path=None, random_state=None): h = randint(120,250) s = int(100.0 * 255.0 / 25

  • Python wordcloud库安装方法总结

    碰到有关于"词云"的概念,那就一定要用到本章教学库--wordcloud,这是第三方的库,主要是用于词云的展示,基本的单位也是以词云为主,利用它的功能,我们可以实现过滤文本信息,这样,就可以直观的观察到我们所需要的信息内容,因此,根据技能上的应用,在实际操作中还是非常常见的,下面来看下安装操作. 安装命令: pip install wordcloud 导入包: from wordcloud import WordCloud 常见方法: 1.加载文本及输出 w = wordcloud.W

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

    目录 wordcloud库常规方法 第三方库 读取文件 自定义绘制指定形状的词云 wordcloud库常规方法 import wordcloud c=wordcloud.WordCloud() #构建词云对象,配置对象参数 c.generate("wordcloud by python ") #加载词云文本 c.to_file("pywordcloud.png") #输出词云文件 词云生成步骤: 分隔:以空格分隔单词 统计:单词出现次数并过滤(1-2个字母会被滤掉)

  • python词云库wordCloud使用方法详解(解决中文乱码)

    文章中的例子主要借鉴wordColud的examples,在文章对examples中的例子做了一些改动. 一.wordColud设计中文词云乱码 使用wordColud设计词云的时候可能会产生乱码问题,因为wordColud默认的字体不支持中文,所以我们只需要替换wordColud的默认字体即可正常显示中文. 1.中文词云乱码 我们使用simhei(黑体)来替换wordColud的默认字体. 2.替换默认字体 a.在字体文件*.tff字体文件(simhei.tff)拷贝到wordColud安装的

  • 用python结合jieba和wordcloud实现词云效果

    0x00 前言 突然想做一个漏洞词云,看看哪些漏洞比较高频,如果某些厂商有漏洞公开(比如ly),也好针对性挖掘.就选x云吧(镜像站 http://wy.hxsec.com/bugs.php ).用jieba和wordcloud两个强大的第三方库,就可以轻松打造出x云漏洞词云. github地址: https://github.com/theLSA/wooyun_wordcloud 本站下载地址:wooyun_wordcloud 0x01 爬取标题 直接上代码: #coding:utf-8 #Au

  • Python安装xarray库读取.nc文件的详细步骤

    目录 第一步: 第二步: 第三步: 附:Python使用xarray读取.nc文件并画出平均值 总结 太坑了,安装之前一定要关掉VPN!!!!!!我的python是3.8版本的. 第一步: 在命令行中输入以下代码安装xarray: conda install xarray 此时直接打开.nc文件可能会报错误,如果错误显示与IO有关,那么必须手动安装scipy和netCDF4,这两个库是用于支持xarray输出的库,如果不添加,就无法输出.nc文件. 第二步: 在命令行中输入以下代码安装scipy

  • python基于pyDes库实现des加密的方法

    本文实例讲述了python基于pyDes库实现des加密的方法.分享给大家供大家参考,具体如下: 下载及简介地址:https://twhiteman.netfirms.com/des.html 如需要在python中使用des加密,可以直接使用pyDes库加密,该库提供了CBC和ECB两种加密方式. 1.Windows下安装 下载后pyDes-x.x.x.zip并解压后,里面有setup.py文件,使用命令 setup.py --help可查看详细使用. 你可以使用命令python setup.

  • python使用win32com库播放mp3文件的方法

    本文实例讲述了python使用win32com库播放mp3文件的方法.分享给大家供大家参考.具体实现方法如下: # Python supports COM, if you have the Win32 extensions # check your Python folder eg. D:\Python23\Lib\site-packages\win32com # also http://starship.python.net/crew/mhammond/win32/Downloads.html

  • Python使用PIL库实现验证码图片的方法

    本文实例讲述了Python使用PIL库实现验证码图片的方法.分享给大家供大家参考,具体如下: 现在的网页中,为了防止机器人提交表单,图片验证码是很常见的应对手段之一.这里就不详细介绍了,相信大家都遇到过. 现在就给出用Python的PIL库实现验证码图片的代码.代码中有详细注释. #!/usr/bin/env python #coding=utf-8 import random from PIL import Image, ImageDraw, ImageFont, ImageFilter _l

  • Python中音频处理库pydub的使用教程

    前言 pydub是Python中用户处理音频文件的一个库.本文主要介绍了关于Python音频处理库pydub使用的相关内容,分享出来供大家参考学习,下面来看看详细的介绍: 安装: 1.安装pip工具:sudo apt-get install python-pip 2.安装pydub:sudo pip install pydub 3.pydub依赖于ffmpeg,所以还需要安装ffmpeg,由于Ubunbtu14.04官方源移除了ffmpeg,因此通过ppa源安装: sudo apt-add-re

  • Python基于sklearn库的分类算法简单应用示例

    本文实例讲述了Python基于sklearn库的分类算法简单应用.分享给大家供大家参考,具体如下: scikit-learn已经包含在Anaconda中.也可以在官方下载源码包进行安装.本文代码里封装了如下机器学习算法,我们修改数据加载函数,即可一键测试: # coding=gbk ''' Created on 2016年6月4日 @author: bryan ''' import time from sklearn import metrics import pickle as pickle

随机推荐