建议收藏chatGPT说的Python词云教程

简介: 写在前面这个是当下最流行最时髦的AI神器chatGPT和我一起合作写的一篇通用技术文章,请读者笑纳!Python词云教程介绍Python是一种流行的编程语言,它可以用于许多不同的应用程序,包括数据可视化。其中一个最流行的数据可视化技术是词云。词云是一种可视化技术,可以将文本中出现频率较高的单词呈现为更大的字体,从而突出显示它们的重要性。步骤1:安装所需的库您需要安装一些Python库,以便可以使用词云功能。其中最重要的是wordcloud和matplotlib库。您可以使用以下命令在命令行中安装这些库:pip install wordcloudpip install matpl

写在前面

这个是当下最流行最时髦的AI神器chatGPT和我一起合作写的一篇通用技术文章,请读者笑纳!

Python词云教程

介绍

Python是一种流行的编程语言,它可以用于许多不同的应用程序,包括数据可视化。其中一个最流行的数据可视化技术是词云。词云是一种可视化技术,可以将文本中出现频率较高的单词呈现为更大的字体,从而突出显示它们的重要性。

步骤1:安装所需的库

您需要安装一些Python库,以便可以使用词云功能。其中最重要的是wordcloud和matplotlib库。您可以使用以下命令在命令行中安装这些库:

pip install wordcloud

pip install matplotlib

步骤2:准备文本

在制作词云之前,您需要有一些文本数据。您可以从任何来源获取文本数据,例如:

  • 从文件中读取文本
  • 从API获取文本
  • 从网站中抓取文本

对于这个教程,我们将使用歌词“给你一瓶魔法药水”,例如:

text = """给你一瓶魔法药水


喝下去就不需要氧气


给你一瓶魔法药水


喝下去就不怕身体结冰


轻轻念着你懂的咒语


一扇门就通往银河系


给你一瓶魔法药水


我们一起去太空旅行


宇宙的有趣我才不在意


我在意的是 你牵我的手 而乱跳的心


宇宙的有趣我才不在意


我在意的是 你想跟着我 去月球谈心


拥有你 就不需要魔法给的勇气


轻轻念着你懂的咒语


一扇门就通往银河系


给你一瓶魔法药水


我们一起去太空旅行


宇宙的有趣我才不在意


我在意的是 你牵我的手 而乱跳的心


宇宙的有趣我才不在意


我在意的是 你想跟着我 去月球谈心


宇宙的有趣我才不在意


我在猜的是 前方的距离 几步走到你


宇宙的有趣我才不在意


我期待的是 今天的晚餐 你想吃哪里


拥有你就不需要魔法给的勇气


你走的方向最后到哪去


可能是火星或者是金星


不管多远多近多累都没关系


我的魔法只对你偏心


我偏心


我偏心


宇宙的有趣我才不在意


我在意的是 你牵我的手 而乱跳的心


宇宙的有趣我才不在意


我在意的是 你想跟着我 去月球谈心


宇宙的有趣我才不在意


我在猜的是 奔跑的距离 几步走到你


宇宙的有趣我才不在意


我期待的是 今天的晚餐 你想吃哪里


有你在


就不需要魔法给的勇气

"""

步骤3:生成词云

现在,我们可以使用wordcloud库来生成词云。以下是一个简单的代码示例,可以生成一个基本的词云

from wordcloud import WordCloud

import matplotlib.pyplot as plt


# 设置词云对象

wordcloud = WordCloud(width=800, height=800, background_color='white', stopwords=set(stopwords)).generate(text)


# 绘制词云

plt.figure(figsize=(8, 8), facecolor=None)

plt.imshow(wordcloud)

plt.axis("off")

plt.tight_layout(pad=0)


# 显示词云

plt.show()

在这个代码示例中,我们首先导入了WordCloud和matplotlib.pyplot库。然后,我们创建了一个WordCloud对象,并将其设置为宽度和高度为800像素,背景颜色为白色,并使用停用词集合来过滤文本。接下来,我们使用matplotlib.pyplot库绘制词云,并使用plt.show()命令显示它。

步骤4:调整词云

您可以通过向WordCloud对象提供不同的参数来调整词云的外观。例如,您可以更改字体,字体大小,颜色和形状。以下是一些常用的参数:

  • font_path:指定用于显示文本的字体文件的路径。
  • max_words:指定要包括在词云中的单词的最大数量。
  • colormap:指定用于着色的matplotlib colormap。
  • mask:指定用于词云的形状。
  • 您可以在WordCloud文档中找到完整的参数列表。

下面是一个带有调整的词云示例:

#!/usr/bin/env python

# -*- coding: UTF-8 -*-

from wordcloud import WordCloud

import matplotlib.pyplot as plt

import numpy as np

from PIL import Image


# 歌词文本

text = """给你一瓶魔法药水


喝下去就不需要氧气


给你一瓶魔法药水


喝下去就不怕身体结冰


轻轻念着你懂的咒语


一扇门就通往银河系


给你一瓶魔法药水


我们一起去太空旅行


宇宙的有趣我才不在意


我在意的是 你牵我的手 而乱跳的心


宇宙的有趣我才不在意


我在意的是 你想跟着我 去月球谈心


拥有你 就不需要魔法给的勇气


轻轻念着你懂的咒语


一扇门就通往银河系


给你一瓶魔法药水


我们一起去太空旅行


宇宙的有趣我才不在意


我在意的是 你牵我的手 而乱跳的心


宇宙的有趣我才不在意


我在意的是 你想跟着我 去月球谈心


宇宙的有趣我才不在意


我在猜的是 前方的距离 几步走到你


宇宙的有趣我才不在意


我期待的是 今天的晚餐 你想吃哪里


拥有你就不需要魔法给的勇气


你走的方向最后到哪去


可能是火星或者是金星


不管多远多近多累都没关系


我的魔法只对你偏心


我偏心


我偏心


宇宙的有趣我才不在意


我在意的是 你牵我的手 而乱跳的心


宇宙的有趣我才不在意


我在意的是 你想跟着我 去月球谈心


宇宙的有趣我才不在意


我在猜的是 奔跑的距离 几步走到你


宇宙的有趣我才不在意


我期待的是 今天的晚餐 你想吃哪里


有你在


就不需要魔法给的勇气

"""


# 获取形状

mask = np.array(Image.open('img/3.png'))


# 设置停用词

stopwords = set(["魔法", "宇宙", "有趣", "勇气"])


# 设置词云对象

wordcloud = WordCloud(width=800, height=800, background_color='white', font_path='C:\\Windows\\Fonts\\simsun.ttc', mask=mask, colormap='viridis', stopwords=set(stopwords)).generate(text)


# 绘制词云

plt.figure(figsize=(8, 8), facecolor=None)

plt.imshow(wordcloud)

plt.axis("off")

plt.tight_layout(pad=0)


# 显示词云

plt.show()

在这个代码示例中,我们使用一张docker的鲸鱼图片,然后我们还使用numpy和PIL库来处理形状。我们还设置了一些停用词,以便过滤文本。最后,我们使用WordCloud对象创建了一个词云,并使用mask参数指定了形状。我们还使用colormap参数指定了用于着色的colormap,使用font_path参数指定了字体文件的路径。

FAQ

您好,请问Python中的词云中文乱码怎么解决?

好的,这个问题提的很好。

以Windows为例,到C:\Windows\Fonts找到你想要的字体贴到WordCloud参数里面去,像楼下这样,我贴的是宋体常规,一起来试试吧,或者你也可以改worldcloud的源码,我猜一下应该是它默认的那个字体你电脑上没有导致的。

最后来看下效果吧

总结

这是一个简单的Python词云教程,可以让您开始制作自己的词云。您可以使用wordcloud和matplotlib库来生成基本的词云,并使用不同的参数来调整其外观。您还可以使用numpy和PIL库来处理形状。

以上就是今天的全部内容,希望能够在数据分析、做PPT上面帮到你,再见!

目录
相关文章
|
26天前
|
存储 Python
SciPy 教程 之 SciPy 稀疏矩阵 4
SciPy 教程之 SciPy 稀疏矩阵 4:介绍稀疏矩阵的概念、类型及其在科学计算中的应用。SciPy 的 `scipy.sparse` 模块提供了处理稀疏矩阵的工具,重点讲解了 CSC 和 CSR 两种格式,并通过示例演示了如何创建和操作 CSR 矩阵。
43 3
|
13天前
|
BI Python
SciPy 教程 之 Scipy 显著性检验 8
本教程介绍SciPy中显著性检验的应用,包括如何利用scipy.stats模块进行显著性检验,以判断样本与总体假设间的差异是否显著。通过示例代码展示了如何使用describe()函数获取数组的统计描述信息,如观测次数、最小最大值、均值、方差等。
23 1
|
14天前
|
Python
SciPy 教程 之 Scipy 显著性检验 6
显著性检验是统计学中用于判断样本与总体假设间是否存在显著差异的方法。SciPy的scipy.stats模块提供了执行显著性检验的工具,如T检验,用于比较两组数据的均值是否来自同一分布。通过ttest_ind()函数,可以获取两样本的t统计量和p值,进而判断差异是否显著。示例代码展示了如何使用该函数进行T检验并输出结果。
18 1
|
15天前
|
Python
SciPy 教程 之 Scipy 显著性检验 3
本教程介绍Scipy显著性检验,包括其基本概念、原理及应用。显著性检验用于判断样本与总体假设间的差异是否显著,是统计学中的重要工具。Scipy通过`scipy.stats`模块提供了相关功能,支持双边检验等方法。
24 1
|
18天前
|
机器学习/深度学习 Python
SciPy 教程 之 SciPy 插值 2
SciPy插值教程:介绍插值概念及其在数值分析中的应用,特别是在处理数据缺失时的插补和平滑数据集。SciPy的`scipy.interpolate`模块提供了强大的插值功能,如一维插值和样条插值。通过`UnivariateSpline()`函数,可以轻松实现单变量插值,示例代码展示了如何对非线性点进行插值计算。
22 3
|
21天前
|
机器学习/深度学习 数据处理 Python
SciPy 教程 之 SciPy 空间数据 4
本教程介绍了SciPy的空间数据处理功能,主要通过scipy.spatial模块实现。内容涵盖空间数据的基本概念、距离矩阵的定义及其在生物信息学中的应用,以及如何计算欧几里得距离。示例代码展示了如何使用SciPy计算两点间的欧几里得距离。
32 5
|
20天前
|
机器学习/深度学习 Python
SciPy 教程 之 SciPy 空间数据 6
本教程介绍了SciPy处理空间数据的方法,包括使用scipy.spatial模块进行点位置判断、最近点计算等内容。还详细讲解了距离矩阵的概念及其应用,如在生物信息学中表示蛋白质结构等。最后,通过实例演示了如何计算两点间的余弦距离。
27 3
|
19天前
|
机器学习/深度学习 数据处理 Python
SciPy 教程 之 SciPy 空间数据 7
本教程介绍了SciPy的空间数据处理功能,涵盖如何使用`scipy.spatial`模块进行点的位置判断、最近点计算等操作。还详细解释了距离矩阵的概念及其在生物信息学中的应用,以及汉明距离的定义和计算方法。示例代码展示了如何计算两个点之间的汉明距离。
26 1
|
22天前
|
Python
SciPy 教程 之 SciPy 图结构 7
《SciPy 教程 之 SciPy 图结构 7》介绍了 SciPy 中处理图结构的方法。图是由节点和边组成的集合,用于表示对象及其之间的关系。scipy.sparse.csgraph 模块提供了多种图处理功能,如 `breadth_first_order()` 方法可按广度优先顺序遍历图。示例代码展示了如何使用该方法从给定的邻接矩阵中获取广度优先遍历的顺序。
28 2
|
23天前
|
算法 Python
SciPy 教程 之 SciPy 图结构 5
SciPy 图结构教程,介绍图的基本概念和SciPy中处理图结构的模块scipy.sparse.csgraph。重点讲解贝尔曼-福特算法,用于求解任意两点间最短路径,支持有向图和负权边。通过示例演示如何使用bellman_ford()方法计算最短路径。
28 3