📜  python词云——Python(1)

📅  最后修改于: 2023-12-03 15:04:42.041000             🧑  作者: Mango

Python词云

Python词云是一种可视化工具,可以通过将文本数据中出现频率较高的词汇以不同大小、颜色等形式呈现出来,反映出文本的关键词汇。下面是通过Python生成词云的步骤和示例代码。

安装依赖库

在生成词云之前,需要安装两个Python库——jieba和wordcloud。jieba是用于中文分词的库,wordcloud则可以生成词云。

!pip install jieba
!pip install wordcloud
导入依赖库

安装好之后,需导入两个库。

import jieba
from wordcloud import WordCloud
分词

使用jieba库的cut方法,对文本进行分词。

text = "Python是一种面向对象、解释型计算机程序设计语言。Python语言具有丰富和强大的库,广泛应用于科学计算、数据分析、人工智能、Web开发等领域。"
word_list = jieba.cut(text)
生成词云

使用WordCloud库的generate_from_frequencies方法,对词频进行统计,并生成词云。

word_freq = {}
for word in word_list:
    if word not in word_freq:
        word_freq[word] = 1
    else:
        word_freq[word] += 1

wc = WordCloud(background_color="white",width=400,height=400,font_path='./simfang.ttf').generate_from_frequencies(word_freq)

其中,background_color表示词云的背景色,默认为黑色;width和height表示词云图片的宽度和高度;font_path则是字体文件路径。

展示词云

最后,使用matplotlib库的pyplot模块展示生成的词云。

import matplotlib.pyplot as plt

plt.imshow(wc)
plt.axis("off")
plt.show()
示例代码
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt

text = "Python是一种面向对象、解释型计算机程序设计语言。Python语言具有丰富和强大的库,广泛应用于科学计算、数据分析、人工智能、Web开发等领域。"
word_list = jieba.cut(text)

word_freq = {}
for word in word_list:
    if word not in word_freq:
        word_freq[word] = 1
    else:
        word_freq[word] += 1

wc = WordCloud(background_color="white",width=400,height=400,font_path='./simfang.ttf').generate_from_frequencies(word_freq)

plt.imshow(wc)
plt.axis("off")
plt.show()

生成的词云如下图所示:

Python词云示例