Python WordCloud 修改色调的实现方式
在绘制词云图时发现有的字颜色为黄色导致看不清因此需要修改整个词云图的色调为冷色调
具体的来说
wordcloud中的color_func参数使得我们能够自定义颜色函数
defrandom_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既表示颜色的取值范围,我们可以谷歌colourpicker查看各颜色的取值范围对应的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")
以下是完整代码,和相应名称的图片和文本文档放一起就成了
importjieba importwordcloud importimageio 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')
以上为个人经验,希望能给大家一个参考,也希望大家多多支持毛票票。如有错误或未考虑完全的地方,望不吝赐教。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。