千家信息网

Python中怎么绘制词云图

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,本篇文章为大家展示了Python中怎么绘制词云图,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。在Python中,我们可以用pyecharts做词云图,也可以使
千家信息网最后更新 2024年11月23日Python中怎么绘制词云图

本篇文章为大家展示了Python中怎么绘制词云图,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

在Python中,我们可以用pyecharts做词云图,也可以使用matplotlib来绘制词云图,并且matplotlib绘制出来的词云图更具个性化。

材料:TXT格式的文件、jupyter notebook、PPT、电脑、Python中的jieba分词库、wordclound库、matplotlib库、微信截图或其它工具等。

数据结构:

# 导入相关的库import jiebafrom wordcloud import WordCloudimport matplotlib.pyplot as plt# 导入文本数据并进行简单的文本处理。注意文本的编码为gbk或utf-8等text = open(r"C:\Users\QDM\Desktop\SAP出库价\9-07\ciyun.txt",encoding ="gbk").read()# 去掉换行符和空格text = text.replace('\n',"").replace("\u3000","")
# 强迫症预览一下加载进来的内容text

# 分词,返回结果为词的列表text_cut = jieba.lcut(text)# 将分好的词用某个符号分割开连成字符串text_cut = ' '.join(text_cut)

# 导入停词# 用于去掉文本中类似于'啊'、'你','我'之类的词stop_words = open(r"C:\Users\QDM\Desktop\SAP出库价\9-07\ciyun.txt",encoding ="gbk").read().split("\n")# 使用WordCloud生成词云word_cloud = WordCloud(font_path="simsun.ttc",  # 设置词云字体                       background_color="white", # 词云图的背景颜色                       stopwords=stop_words) # 去掉的停词word_cloud.generate(text_cut)# 用matplotlib渲染出词云图# 调整画布的长和宽plt.subplots(figsize=(12,8))plt.imshow(word_cloud)plt.axis("off")

渲染效果:

接下来,我们可根据自己的想法自定义自己想要的词云形状。如下:

我们可以现在PPT里面设置出以下效果:

然后再用微信截图或其它工具裁剪再保存一下。

编写完整代码:

# 完整代码# 导入相关的库import jiebafrom wordcloud import WordCloudimport matplotlib.pyplot as pltfrom PIL import Image# 加载并处理分词text = open(r"C:\Users\QDM\Desktop\SAP出库价\9-07\ciyun.txt",encoding ="gbk").read()text = text.replace('\n',"").replace("\u3000","")text_cut = jieba.lcut(text)text_cut = ' '.join(text_cut)stop_words = open(r"C:\Users\QDM\Desktop\SAP出库价\9-07\ciyun.txt",encoding ="gbk").read().split("\n")# 读取背景图片,也可以输入中文background = Image.open(r"C:\Users\QDM\Desktop\fu.png")graph = np.array(background)word_cloud = WordCloud(font_path="simsun.ttc",                        background_color="white",                        mask=graph, # 指定词云的形状                       stopwords=stop_words)# 渲染效果word_cloud.generate(text_cut)plt.subplots(figsize=(12,8))plt.imshow(word_cloud)plt.axis("off")

渲染出来的效果:

上述内容就是Python中怎么绘制词云图,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

0