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

yipeiwu_com7年前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使用xpath中遇到:<Element a at 0x39a9a80>到底是什么?

前言 大家在学习python爬虫的过程中,会发现一个问题,语法我看完了,说的也很详细,我也认真看了,爬虫还是不会写,或者没有思路,所以我的所有文章都会从实例的角度来解析一些常见的问题和...

python shell根据ip获取主机名代码示例

这篇文章里我们主要分享了python中shell 根据 ip 获取 hostname 或根据 hostname 获取 ip的代码,具体介绍如下。 笔者有时候需要根据hostname获取i...

python UDP(udp)协议发送和接收的实例

需要建立2个文件,一个作为客户端,一个作为服务端 文件一 作为客户端client,文件二作为服务端server udp的特点是不需要建立连接 文件一客户端 #不需要建立连接 impo...

Anaconda2下实现Python2.7和Python3.5的共存方法

Anaconda2下实现Python2.7和Python3.5的共存方法

Anaconda 本质上是一个软件发行版,包含了 conda、Python 等 180 多个科学包及其依赖项。 因为包含了大量的科学包,Anaconda 的下载文件比较大(约 500 M...

Python使用itchat模块实现群聊转发,自动回复功能示例

本文实例讲述了Python使用itchat模块实现群聊转发,自动回复功能。分享给大家供大家参考,具体如下: 1.itchat自动把好友发来的消息,回复给他 仅能实现自动回复 原文给 好友...