当前位置 : 主页 > 手机开发 > harmonyos >

利用Matplotlib绘制词云_Python数据分析与可视化

来源:互联网 收集:自由互联 发布时间:2023-12-16
利用Matplotlib绘制词云 安装相关的包 词云生成过程 示例 词云对于网络文本中出现频率较多的关键词予以视觉上额突出,形成“关键词云层”或“关键词渲染”,从而过滤掉大量的文本



利用Matplotlib绘制词云

  • 安装相关的包
  • 词云生成过程
  • 示例


词云对于网络文本中出现频率较多的关键词予以视觉上额突出,形成“关键词云层”或“关键词渲染”,从而过滤掉大量的文本信息,使浏览网页者只要一眼扫过文本就可以领略文本的主旨。

安装相关的包

绘制词云安装两个包,WordCloud包和jieba包。
jieba包的作用是从句子中分割词汇。

pip install wordcloud pip install jieba

利用Matplotlib绘制词云_Python数据分析与可视化_jupyter


利用Matplotlib绘制词云_Python数据分析与可视化_matplotlib_02

词云生成过程

一般生成词云的过程为:

  1. 首先使用pandas读取数据并将需要分析的数据转化为列表;
  2. 对获得的列表数据利用分词工具jieba进行遍历分词;
  3. 使用WordCloud设置词云图片的属性、掩码和停用词,并生成词云图像。

示例

import jieba
from wordcloud import WordCloud,STOPWORDS
import PIL.Image as image
import numpy as np
import matplotlib.pyplot as plt

def get_wordCloud():
	# 读取文件的时候记得查看文件的编码方式,在记事本的右下角(具体位置见文末图)
    file = open("data//背影.txt", encoding='utf-8')
    mylist = file.read()
    word_list = jieba.cut(mylist)
    new_text = ''.join(word_list)
    # 加入背景形状
    pic_path = 'data//myimg.jpg'
    img_mask = np.array(image.open(pic_path))
    # 停用词库,英文文本的停用词直接用 stopwords = STOPWORDS
    # 中文停用需要导入替换
    stopwords = set()
    # 读取文件的时候记得查看文件的编码方式,在记事本的右下角(具体位置见文末图)
    content = [line.strip() for line in open('data//泰戈尔的诗.txt','r', encoding='ANSI').readlines()]
    stopwords.update(content)
    # 生成词云
    wordcloud = WordCloud(background_color = "white",font_path = 'C:\windows\Fonts\msyh.ttc', mask = img_mask,stopwords = stopwords).generate(new_text)
    plt.imshow(wordcloud)
    plt.axis("off")
    plt.show()
wordList = get_wordCloud()

利用Matplotlib绘制词云_Python数据分析与可视化_数据可视化_03

全部:

利用Matplotlib绘制词云_Python数据分析与可视化_数据分析_04

文件编码:

利用Matplotlib绘制词云_Python数据分析与可视化_数据可视化_05


网友评论