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 / 255.0) l = int(100.0 * float(randint(60, 120)) / 255.0) return "hsl({}, {}%, {}%)".format(h, s, l)
其中 h既表示颜色的取值范围,我们可以谷歌colour picker 查看各颜色的取值范围对应的h值
这里博主为取蓝绿色所以令h的范围在120到250之间,大家可以自己修改
最后在参数中设置 color_func = random_color_func
即可
补充:python中使用wordcloud库生成的词云改为统一颜色的方法
在网上找了一个多小时都没找到办法,去看wordcloud官网也没找到操作方法,干脆就直接看源代码了
然后从里面复制出来一小段代码:
color_func=lambda *args, **kwargs: "red"
把这段代码与字体之类的参数一起赋给词云变量就可以了,如下:
w=wordcloud.WordCloud(font_path='msyh.ttc',mask=mianju,\ width=1000,height=700,background_color='white',mode='RGBA',color_func=lambda *args, **kwargs: "red")
以下是完整代码,和相应名称的图片和文本文档放一起就成了
import jieba import wordcloud import imageio zhezhao=imageio.imread('图片遮罩.jpg')#用imageio替代目前已经移除image的scipy库 f=open('这是一个文本.txt','r',encoding='utf-8') t=f.read() f.close() ls=jieba.lcut(t) txt=' '.join(ls) w=wordcloud.WordCloud(font_path='msyh.ttc',mask=zhezhao,\ width=1000,height=700,background_color='white',mode='RGBA',color_func=lambda *args, **kwargs: "red") w.generate(txt) w.to_file('这是生成的图片.png')
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。
相关推荐
-
Python wordcloud库安装方法总结
碰到有关于"词云"的概念,那就一定要用到本章教学库--wordcloud,这是第三方的库,主要是用于词云的展示,基本的单位也是以词云为主,利用它的功能,我们可以实现过滤文本信息,这样,就可以直观的观察到我们所需要的信息内容,因此,根据技能上的应用,在实际操作中还是非常常见的,下面来看下安装操作. 安装命令: pip install wordcloud 导入包: from wordcloud import WordCloud 常见方法: 1.加载文本及输出 w = wordcloud.W
-
Python基于wordcloud及jieba实现中国地图词云图
热词图很酷炫,也非常适合热点事件,抓住重点,以图文结合的方式表现出来,很有冲击力.下面这段代码是制作热词图的,用到了以下技术: jieba,把文本分词 wordcloud,制作热图 chardet,辨别文件的编码格式,其中中文统一为GB18030,更加的兼容 imageio,提取图片的形状 其他:自动识别文件编码,自动识别txt文件,图片文件名与txt文件一致,使用的是四大名著的文本(自行百度),部分中国地图 上代码: import os import jieba import wordclou
-
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
-
关于python3.9安装wordcloud出错的问题及解决办法
本文给大家分享python3.9安装wordcloud出错解决经历,感兴趣的朋友一起看看吧 晚上闲的无聊,就想安装个词云玩玩,但是安装失败,出现命令在退出时发生错误,在网上找了很多的解决办法,但是一一不管用,试了在pycharm->settings->project interrupt 进行安装,不料还是报错, 我开始是用pip install --upgradepip 和pip install --upgrade setuptools来升级我的pip,但是没有什么用,还是一如既往的报错. 此
-
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基于jieba, wordcloud库生成中文词云
代码如下 import wordcloud import jieba font = r'C:\Windows\Fonts\simfang.ttf' w = wordcloud.WordCloud(height = 700, width = 1000, font_path=font, \ stopwords=['et','al', 'Crampin', 'and','the', 'Liu'], max_words=30) with open('NSFC.txt', 'r') as f: txt =
-
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文件修改的两种方式
文件的数据是存放于硬盘上的,因而只存在覆盖.不存在修改这么一说,我们平时看到的修改文件,都是模拟出来的效果,具体的说有两种实现方式. 一.方式一 将硬盘存放的该文件的内容全部加载到内存,在内存中是可以修改的,修改完毕后,再由内存覆盖到硬盘(word,vim,nodpad++等编辑器). import os with open('37r.txt') as fr, \ open('37r_swap.txt', 'w') as fw: data = fr.read() # 全部读入内存,如果文件很大,
-
python tornado修改log输出方式
sed -i 's/StreamHandler()/StreamHandler(sys.__stdout__)/' /opt/python/python3/lib/python3.6/site-packages/tornado/log.py 将手动打印的后台信息输出到stdout,重定向到文件 设置时区: timedatectl set-timezone 'Asia/Shanghai' 启动项目: nohup python3 cluster.py >> logs/deploy.log &
-
python批量修改xml属性的实现方式
今天来说说xml那些事儿.如何批量修改指定文件夹下的xml文件的指定属性.分三步走,首先,我们先看看如何读写单个 的xml文件;第二步,来看看如何遍历指定文件夹下的所有文件,获取到所有文件的文件名;第三步,我们来看看一二之间 该如何衔接.好,lets do it step1:对单个xml文件进行读写 给定一个xml文件: <?xml version="1.0" encoding="utf-8"?> <catalog> <maxid>
-
Python批量修改文件名的方式详解
目录 批量修改文件名(保留后缀) 批量修改文件名(全改) 读取文件下的所有文件名 总结 批量修改文件名(保留后缀) 这种方法,保留了文件原本的后缀.这里主要演示的是对图片名的修改. # 批量修改文件名 # 批量修改图片文件名 import os import re import sys path = 'F:\Temp\ZZ' fileList = os.listdir(path) # 待修改文件夹 print("修改前:"+str(fileList)) # 输出文件夹中包含的文件 cu
-
深入解读Python解析XML的几种方式
在XML解析方面,Python贯彻了自己"开箱即用"(batteries included)的原则.在自带的标准库中,Python提供了大量可以用于处理XML语言的包和工具,数量之多,甚至让Python编程新手无从选择. 本文将介绍深入解读利用Python语言解析XML文件的几种方式,并以笔者推荐使用的ElementTree模块为例,演示具体使用方法和场景.文中所使用的Python版本为2.7. 一.什么是XML? XML是可扩展标记语言(Extensible Markup Langu
-
Python实现修改文件内容的方法分析
本文实例讲述了Python实现修改文件内容的方法.分享给大家供大家参考,具体如下: 1 替换文件中的一行 1.1 修改原文件 ① 要把文件中的一行Server=192.168.22.22中的IP地址替换掉,因此把整行替换. data = '' with open('zhai.conf', 'r+') as f: for line in f.readlines(): if(line.find('Server') == 0): line = 'Server=%s' % ('192.168.1.1',
-
python利用numpy存取文件的方式
NumPy提供了多种存取数组内容的文件操作函数.保存数组数据的文件可以是二进制格式或者文本格式.二进制格式的文件又分为NumPy专用的格式化二进制类型和无格式类型. numpy格式的文件可以保存为后缀为(.npy/.npz)格式的文件 1. tofile()和fromfile() tofile()将数组中的数据以二进制格式写进文件 tofile()输出的数据不保存数组形状和元素类型等信息 fromfile()函数读回数据时需要用户指定元素类型,并对数组的形状进行适当的修改 import nump
-
Python中修改字符串的四种方法
在Python中,字符串是不可变类型,即无法直接修改字符串的某一位字符. 因此改变一个字符串的元素需要新建一个新的字符串. 常见的修改方法有以下4种. 方法1:将字符串转换成列表后修改值,然后用join组成新字符串 >>> s='abcdef' #原字符串 >>> s1=list(s) #将字符串转换为列表 >>> s1 ['a', 'b', 'c', 'd', 'e', 'f'] #列表的每一个元素为一个字符 >>> s1[4]='
-
Python 脚本的三种执行方式小结
1.交互模式下执行 Python,这种模式下,无需创建脚本文件,直接在 Python解释器的交互模式下编写对应的 Python 语句即可. 1)打开交互模式的方式: Windows下: 在开始菜单找到"命令提示符",打开,就进入到命令行模式: 在命令行模式输入: python 即可进入 Python 的交互模式 Linux 下: 直接在终端输入 python,如果是按装了 python3 ,则根据自己建的软连接的名字进入对应版本的 Python 交互环境,例如我建立软连接使用的 pyt
随机推荐
- win2008中设置计划任务执行PHP文件的方法
- Java读取Map的两种方法与对比
- js 字符串转换成数字的三种方法
- 弹出遮罩层后禁止滚动效果【实现代码】
- 动态刷新 dorado树的js代码
- 一些关于PHP的知识
- php实现的Captcha验证码类实例
- 利用windows性能计数器进行服务器性能监控示例分享
- 基于Bootstrap里面的Button dropdown打造自定义select
- js indexOf()定义和用法
- Android入门教程之ListView的应用示例
- document.all与getElementById、getElementsByName、getElementsByTagName用法区别-getElementById
- ISAPI_Rewrite 3.1 教程中文版
- Linux使用libnet实现ARP攻击脚本原理分析以防被攻击
- 浅谈spring和spring MVC的区别与关系
- java二分查找插入法
- Python 使用requests模块发送GET和POST请求的实现代码
- JavaScript脚本语言是什么_动力节点Java学院整理
- MAC地址与IP地址绑定策略的破解
- mint-ui 时间插件使用及获取选择值的方法