效果

实现

通过使用ImageColorGenerator中实现的基于图像的着色策略,可以对单词云进行着色。

它使用源图像中单词所占据的区域的平均颜色。

您可以结合使用掩码——纯白色在作为掩码传递时被WordCloud对象解释为“不要占用”。如果你想要白色作为合法的颜色,你可以只传递一个不同的图像到“蒙版”,但要确保图像形状排列。

打开IDLE,新建文件image-colored.py

在同目录下新建aobama.txt,用来作为词云的数据源。

bg.jpn是作为背景以及着色图取色的照片。

源码:

from os import path
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
import osfrom wordcloud import WordCloud, STOPWORDS, ImageColorGenerator# get data directory (using getcwd() is needed to support running example in generated IPython notebook)
d = path.dirname(__file__) if "__file__" in locals() else os.getcwd()# Read the whole text.
text = open(path.join(d, 'aobama.txt')).read()# read the mask / color image taken from
# http://jirkavinse.deviantart.com/art/quot-Real-Life-quot-Alice-282261010
alice_coloring = np.array(Image.open(path.join(d, "bg.jpg")))
stopwords = set(STOPWORDS)
stopwords.add("said")wc = WordCloud(background_color="white", max_words=2000, mask=alice_coloring,stopwords=stopwords, max_font_size=40, random_state=42)
# generate word cloud
wc.generate(text)# create coloring from image
image_colors = ImageColorGenerator(alice_coloring)# show
fig, axes = plt.subplots(1, 3)
axes[0].imshow(wc, interpolation="bilinear")
# recolor wordcloud and show
# we could also give color_func=image_colors directly in the constructor
axes[1].imshow(wc.recolor(color_func=image_colors), interpolation="bilinear")
axes[2].imshow(alice_coloring, cmap=plt.cm.gray, interpolation="bilinear")
for ax in axes:ax.set_axis_off()
plt.show()

保存并运行。

Python实现根据图片进行着色的词云相关推荐

  1. python词云改颜色_使用Python创建一个与图像颜色匹配的词云

    原标题:使用Python创建一个与图像颜色匹配的词云 来自:https://www.linuxmi.com/ 我用Python造了一个词云.不过这次创建的是与图像颜色匹配的词云. 使用Python w ...

  2. python数据挖掘学习笔记】十三.WordCloud词云配置过程及词频分析

    #2018-03-28 09:59:40 March Wednesday the 13 week, the 087 day SZ SSMR 11,12因为涉及到数据库被我暂时放弃了 python数据挖 ...

  3. 使用Python爬虫获取豆瓣影评,并用词云显示

    使用Python爬虫获取豆瓣影评,并用词云显示 Python语言流行到现在,目前最受开发者喜爱的功能莫过于它的爬虫功能,以至于很多人以为Python的英语发音也是"爬虫",其实它是 ...

  4. 详解使用Python爬取豆瓣短评并绘制词云

    使用Python爬取豆瓣短评并绘制词云 成果如下(比较丑,凑合看) 1.分析网页 打开想要爬取的电影,比如<找到你>,其短评如下: 查看源代码 发现短评存放在<span>标签里 ...

  5. python——读取docx文档wordcloud生成词云并进行词频统计

    文章目录 环境准备 导入库 读取docx并进行分词 词频 词云 设置背景图片(可选) 生成词云 保存词云并显示 环境准备 # 不是docx,是python-docx!!!!!!! pip instal ...

  6. Python NLPIR2016 与 wordcloud 结合生成中文词云

    前叙 该博文继承之前的文章,进一步介绍NLPIR2016的使用,三个内容(利用NLPIR 的发现新词功能自动提取文本内的新词汇,解决worldcloud中英文混合只显示中文的问题,NLPIR与worl ...

  7. python豆瓣爬虫爬取评论做成词云

    前言 前一段时间学校有个project,做一个电影购票系统,当时就用springboot做了系统,用python抓了一些电影的基本信息.后来发现如果把评论做成词云那展示起来不是很酷炫么.于是乎把这个过 ...

  8. python 词云手把手_手把手教你用python制作属于你的第一个词云

    相信很多人在网上,或者是在一些报告或者ppt上,都看到过类似这种图片 你可能会好奇它是怎么做出来的,如果你会ps,你可能会觉得,这是用ps一步一步制作出来的.是的没错,一开始我也是坚定不移的这么认为. ...

  9. python color属性_使用Python制作一个带GUI界面的词云自动生成工具(连载七)

    前几篇向大家介绍了词云自动生成工具(GUI)的详解GUI词云自动生成工具中词云属性设置界面的实现(连载六).通过前面内容我们基本构建出了词云自动生成工具的主要框架.本篇结合tkinter中的filed ...

最新文章

  1. 戳戳HackShield Ring0反調試
  2. 翻译关于ViewController的一篇文章
  3. LAMP-----3、配置apache实现与php的整合
  4. 【视频内含福利】原来手机套壳视频是这么做出来的
  5. 网络协议之http和tcp思维导图
  6. vue ---- 动态组件
  7. MyBatis深入(2)-项目结构
  8. windows系统开机自动扫描硬盘的原因及解决方法
  9. 如何在Shell脚本中使用if-else?
  10. 基于Springboot实现项目立项管理系统
  11. 四川民办高校计算机专业排名2015,2015中国民办大学最佳专业排行榜10强
  12. Jeff Dean 光辉事迹
  13. dataframe.append()合并多个列名相同的文件
  14. python远程操控超微服务器(IPMI)、电脑开机(WOL)
  15. 分子动力学(二)-成键相互作用
  16. 高一数学知识点复习:命题及其关系、充分条件
  17. idea安装plantuml插件画流程图
  18. 电视上设置禁止安装不是从Android,海信电视禁止安装第三方软件怎么办?当贝市场教你解决方法!...
  19. iWebOffice2003.ocx 的程序集成
  20. 网络安全法剑指“黑帽黑客”

热门文章

  1. JVM调优笔记:认识JVM内存模型(jdk1.8)
  2. springcloud的理解
  3. linux c代码出现段错误,在linux下代码运行出现段错误,求大神
  4. threejs模型可视化编辑器_一个近乎无门槛、零基础的3D场景编辑器
  5. c 服务器文件是存在,客户端服务器在较大的文件的c文件传输问题
  6. 软件工程实训有必要吗_软件工程实训报告的总结.docx
  7. python utf8_肿么在Python里使用UTF-8编码
  8. d3力导向图增加节点_D3.js+Es6+webpack构建人物关系图(力导向图),动态更新数据,点击增加节点,拖拽增加连线......
  9. linux拒绝tcp链接,Linux 内核 TCP SACK 拒绝服务问题
  10. agent docker zabbix_docker部署zabbix