python根据文本生成词云图代码实例


Posted in Python onNovember 15, 2019

这篇文章主要介绍了python根据文本生成词云图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

效果

python根据文本生成词云图代码实例

代码

from wordcloud import WordCloud
import codecs
import jieba
#import jieba.analyse as analyse
from scipy.misc import imread
import os
from os import path
import matplotlib.pyplot as plt
from PIL import Image, ImageDraw, ImageFont


# 绘制词云
def draw_wordcloud():
  #读入一个txt文件
  comment_text = open('data.txt','r',encoding='utf-8').read()
  #结巴分词,生成字符串,如果不通过分词,无法直接生成正确的中文词云
  cut_text = " ".join(jieba.cut(comment_text))
  d = path.dirname(__file__) # 当前文件文件夹所在目录
  color_mask = imread("bilibili.jpg") # 读取背景图片
  cloud = WordCloud(
    #设置字体,不指定就会出现乱码
    font_path="C:/Windows/Fonts/STXINGKA.TTF",
    #font_path=path.join(d,'simsun.ttc'),
    #设置背景色
    background_color='white',
    #词云形状
    mask=color_mask,
    #允许最大词汇
    max_words=2000,
    #最大号字体
    max_font_size=100
  )
  word_cloud = cloud.generate(cut_text) # 产生词云
  word_cloud.to_file("bilibilirankword.jpg") #保存图片
  # 显示词云图片
  plt.imshow(word_cloud)
  plt.axis('off')
  plt.show()

if __name__ == '__main__':
  draw_wordcloud()

步骤以及注意点

1.首先要导入对应的库

2.文字会根据背景图而分布

3.背景图的选择对于最终效果很重要,选一个尽量大一点的背景图,这个背景图随便找就好,任何图片都可以不过最好大一些,图案不太复杂

4.如果字号小的话,可以调整字体,或者换个背景图

5.font_path要使用自己的字体库,不过你的电脑是windows的话,应该不用改,用我这个就可以,除此之外呢,这个字体如果是别的的话,可能会出现

中文不能产生词云图的现象,总之用我的就好了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python入门篇之字典
Oct 17 Python
Python 调用Java实例详解
Jun 02 Python
python 对给定可迭代集合统计出现频率,并排序的方法
Oct 18 Python
Python学习笔记基本数据结构之序列类型list tuple range用法分析
Jun 08 Python
Python使用sklearn库实现的各种分类算法简单应用小结
Jul 04 Python
Python Collatz序列实现过程解析
Oct 12 Python
浅谈Python type的使用
Nov 19 Python
解决pycharm启动后总是不停的updating indices...indexing的问题
Nov 27 Python
python 将dicom图片转换成jpg图片的实例
Jan 13 Python
python读取yaml文件后修改写入本地实例
Apr 27 Python
OpenCV4.1.0+VS2017环境配置的方法步骤
Jul 09 Python
python转化excel数字日期为标准日期操作
Jul 14 Python
解决django后台管理界面添加中文内容乱码问题
Nov 15 #Python
python中的TCP(传输控制协议)用法实例分析
Nov 15 #Python
Django admin禁用编辑链接和添加删除操作详解
Nov 15 #Python
django实现类似触发器的功能
Nov 15 #Python
Python socket实现的文件下载器功能示例
Nov 15 #Python
Django通过dwebsocket实现websocket的例子
Nov 15 #Python
Python numpy线性代数用法实例解析
Nov 15 #Python
You might like
PHP Squid中可缓存的动态网页设计
2008/09/17 PHP
php上传大文件失败的原因及应对策略
2015/10/20 PHP
PHP 读取文本文件内容并分页显示
2016/01/02 PHP
PHP搭建大文件切割分块上传功能示例
2017/01/04 PHP
PHP实现微信申请退款功能
2018/10/01 PHP
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
js实现拉幕效果的广告代码
2015/09/02 Javascript
jQuery实现鼠标滑过链接控制图片的滑动展开与隐藏效果
2015/10/28 Javascript
jQuery操作iframe中js函数的方法小结
2016/07/06 Javascript
jQuery实现的简单百分比进度条效果示例
2016/08/01 Javascript
Bootstrap基本插件学习笔记之轮播幻灯片(23)
2016/12/08 Javascript
jQuery电话号码验证实例
2017/01/05 Javascript
jQuery对table表格进行增删改查
2020/12/22 Javascript
微信小程序模板之分页滑动栏
2017/02/10 Javascript
详解Web使用webpack构建前端项目
2017/09/23 Javascript
浅谈webpack打包生成的bundle.js文件过大的问题
2018/02/22 Javascript
JavaScript实现一个带AI的井字棋游戏源码
2018/05/21 Javascript
利用百度echarts实现图表功能简单入门示例【附源码下载】
2019/06/10 Javascript
使用jquery-easyui的布局layout写后台管理页面的代码详解
2019/06/19 jQuery
Vue.js自定义指令学习使用详解
2019/10/19 Javascript
OpenLayer3自定义测量控件MeasureTool
2020/09/28 Javascript
[03:40]2014DOTA2国际邀请赛 B神专访:躲箭真的很难
2014/07/13 DOTA
[03:39]2015国际邀请赛主赛事首日精彩回顾
2015/08/05 DOTA
Python入门篇之正则表达式
2014/10/20 Python
使用Python的Tornado框架实现一个一对一聊天的程序
2015/04/25 Python
python脚本监控docker容器
2016/04/27 Python
详解Python3中字符串中的数字提取方法
2017/01/14 Python
python求质数的3种方法
2018/09/28 Python
python 内置模块详解
2019/01/01 Python
OpenCV哈里斯(Harris)角点检测的实现
2020/01/15 Python
浅谈keras使用预训练模型vgg16分类,损失和准确度不变
2020/07/02 Python
python 爬取小说并下载的示例
2020/12/07 Python
Sahajan美国:阿育吠陀护肤品牌
2021/01/09 全球购物
简述进程的启动、终止的方式以及如何进行进程的查看
2014/02/20 面试题
护士毕业生自荐信
2014/02/07 职场文书
项目经理聘任书
2014/03/29 职场文书