Python(wordcloud):根据词频信息(xlsx、csv文件)绘制词云图

本文详细介绍了如何使用Python通过读取xlsx或csv文件中的词频数据,利用jieba和wordcloud库绘制词云图,包括基本形状和指定形状,以及处理中文字符和背景图片的应用。

一、前言

本文将介绍如何用python根据词频信息(xlsx、csv文件)绘制词云图,除了绘制常规形状的词云图(比如长方形),还可以指定词云图的形状。

二、安装并引入相关的库

1、安装相关的库
pip install jieba
pip install matplotlib
pip install wordcloud
pip install numpy
pip install Image 
pip install pandas
2、导入相关的库
import jieba
import matplotlib.pyplot as plt
from wordcloud import WordCloud
import numpy as np
from PIL import Image # 图像处理
import pandas as pd

三、数据处理

1、文件读取
  • 本文使用的数据集是excel文件(后缀名是.xlsx),该文件包含2个字段:关键词以及对应的频数
    在这里插入图片描述

  • 以下是对excel文件的相关操作:

import pandas as pd
df=pd.read_excel("data-test.xlsx")# 读取excel数据信息
print(df)
  • 数据读取结果如下:

在这里插入图片描述

  • 只读取文件的前N条数据
# 只获取前5条数据
df_new=df.head(5)
print(df_new)
  • 结果如下:
    在这里插入图片描述
2、数据格式转换

读取到excel文件后,需要把数据转换成字典的格式:

# 生成一个DataFrame文件,index为df数据的index
data = pd.DataFrame(index=df['关键词'])
# 先将词频这一列赋值为0 ,即定义这一列为int格式,后面再赋值
data['词频']=0
# 将excel的数据写入data中
for i in range(0,len(df)):
    data.iloc[i,0]=df.iloc[i,1]
# 将词频按照从大到小排序
data = data['词频'].sort_values(ascending = False)
# 生成dict格式数据
data = dict(data)
print(data)
  • 结果如下:

在这里插入图片描述

四、绘制词云图

由于excel文件本身已经提供了关键词以及对应的词频,因此这里绘制词云图的时候不用对文本进行结巴分词。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值