Python pyecharts绘制词云图代码

下面是Python pyecharts绘制词云图的完整攻略:

简介

pyecharts(Python echarts)是一款基于Echarts语法的Python可视化库,支持多种可视化类型的展示,其中就包括了词云图(WordCloud)。

准备工作:

  1. 安装pyecharts库

pip install pyecharts

  1. 从所需爬取的文本中获取分词

pyecharts中的WordCloud要求传入一份分好词的词频数据,故我们需要将文本进行分词。可以使用Python中常用的分词库如jieba库进行分词实现,示例代码:

```python
import jieba

text = "Python是一门非常流行的编程语言,它简洁易学,使用广泛。"
# 通过jieba库进行中文分词,返回分词结果,类型为列表
seg_list = jieba.lcut(text, cut_all=False)
print(seg_list)
# 输出结果:['Python', '是', '一门', '非常', '流行', '的', '编程语言', ',', '它', '简洁', '易学', ',', '使用', '广泛', '。']
```

代码实现:

以下代码实现了根据传入的词频数据生成词云图的功能,在调用WordCloud()时,需要传入一个字典类型的数据,其中以词语为键,以词频为值(如:{'Python': 10, '编程': 5}),表示该词语在文本中出现的频率:

from pyecharts import options as opts
from pyecharts.charts import WordCloud

# 传入的词频数据,类型为字典
word_freq = {
    'Python': 10,
    '编程': 5,
    '语言': 7,
    '数据分析': 3,
    '机器学习': 4,
    '可视化': 2
}

# 生成词云图,并设置词云图的样式
wordcloud = (
    WordCloud(init_opts=opts.InitOpts(width='800px', height='400px'))
    .add(series_name='', data_pair=word_freq.items(), word_gap=10, rotate_step=90, shape='roundRect')
    .set_global_opts(
        title_opts=opts.TitleOpts(title='词云图'),
        tooltip_opts=opts.TooltipOpts(is_show=True),
        visualmap_opts=opts.VisualMapOpts(max_=10),
    )
    .render(path='wordcloud.html')
)

示例说明:

下面演示两个实际应用的案例:

  1. 网络爬虫爬取词频数据

使用Python官方库的urllib进行网络爬虫,获取网络信息,并使用jieba库进行分词,代码如下:

```python
import urllib.request
import jieba

url = "http://news.sina.com.cn/"
response = urllib.request.urlopen(url)
html = response.read()
# 利用正则表达式提取文本内容
import re
pattern = re.compile(r'<[^>]+>', re.S)
content = pattern.sub('', html.decode())
# 使用jieba库进行分词
seg_list = jieba.lcut(content, cut_all=True)
word_freq = {}
for word in seg_list:
if len(word) > 1: # 去掉单个的字
word_freq[word] = word_freq.get(word, 0) + 1
```

将所获得的分词结果作为数据项传入到WordCloud中,即可生成网络新闻页面的词云图。

  1. 从CSV文件中读取词频数据

利用Python内置的csv库读取CSV文件中的数据,并将其存储为字典,代码如下:

```python
import csv

with open('word_freq.csv', 'r', encoding='utf-8') as f:
csv_reader = csv.reader(f)
word_freq = {}
for row in csv_reader:
word_freq[row[0]] = int(row[1])
```

将所获得的分词结果作为数据项传入到WordCloud中,即可生成CSV中的词云图。

结论

pyecharts库在各类数据可视化中都有着十分出色的表现,特别是在设计词云图方面更是如此,只需要几行代码即可制作出复杂、美观的词云图,并且支持多种图形效果的设置和自定义。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python pyecharts绘制词云图代码 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • PHP基于phpqrcode类库生成二维码过程解析

    PHP基于phpqrcode类库生成二维码过程解析 phpqrcode是一个基于PHP的二维码生成类库,可以方便地生成各种类型的二维码。本文将详细讲解phpqrcode类库的安装和使用过程,包括phpqrcode的安装、二维码生成、二维码参数设置等内容,并提供两个示例。 phpqrcode的安装 在使用phpqrcode之前,我们需要先安装phpqrcode…

    python 2023年5月15日
    00
  • python自动化办公操作PPT的实现

    下面我会详细讲解“Python自动化办公操作PPT的实现”的完整攻略。 1. 准备工作 在开始Python自动化办公操作PPT之前,我们需要安装相关依赖库。首先确保已经安装Python,然后使用pip或conda安装以下几个库: python-pptx:用于操作PPT文件 pandas:用于处理Excel表格数据(可选) 安装完成后,可以使用以下代码检测库是…

    python 2023年5月18日
    00
  • 无法在 Django 中导入视图(2.1.4、Python 3.7.0、Win 7)

    【问题标题】:Cannot import views in Django (2.1.4, Python 3.7.0, Win 7)无法在 Django 中导入视图(2.1.4、Python 3.7.0、Win 7) 【发布时间】:2023-04-03 18:35:01 【问题描述】: 我正在使用 django 构建一个站点,但无法将视图导入我的 URL 文件…

    Python开发 2023年4月8日
    00
  • Python学习之文件的创建与写入详解

    Python学习之文件的创建与写入详解 在Python中,文件是信息存储的一种重要方式。Python中的文件操作非常简单,可以轻松地创建、读取和修改文件。本文介绍如何在Python中创建和写入文件。 文件的创建 要在Python中创建一个新文件,可以使用内置的open()函数。 open()函数的语法如下: file = open(filename, mod…

    python 2023年6月2日
    00
  • 基于python编写的shell脚本详细讲解

    基于Python编写的Shell脚本详细讲解 什么是Shell脚本 Shell是Linux/Unix操作系统下的命令解释器,是用户与操作系统之间的接口。Shell脚本就是在这个解释器中使用Shell语言编写的可执行脚本文件。Shell脚本可以实现系统自动化任务、软件安装部署、文件管理等一系列操作,提高了工作效率并减少了人为操作出错的风险。 Python中执行…

    python 2023年6月3日
    00
  • python中单例常用的几种实现方法总结

    Python中单例常用的几种实现方法总结 在Python中,单例指的是在一个进程中,某个类仅有一个实例,并提供一个全局的访问点。 本文将总结几种Python中单例模式的实现方法,包括: 使用装饰器 使用类 使用元类 使用装饰器 通过装饰器来实现单例模式,可以避免在类中编写额外的代码。该装饰器可以应用于几乎所有的类。 def singleton(cls): i…

    python 2023年5月19日
    00
  • python opencv 图像拼接的实现方法

    我将为您详细讲解“python opencv图像拼接的实现方法”的完整攻略。 一、背景知识 在讲解图像拼接的实现方法之前,我们需要了解一些背景知识。 1. 像素 图像是由像素组成的,像素是图像的最基本单位。每个像素都有自己的坐标和颜色值。 2. 通道 一个像素的颜色值通常由三种基本颜色(RGB)来表示。对于彩色图像,每个像素都有一个红色通道、一个绿色通道和一…

    python 2023年5月18日
    00
  • python实现动态数组的示例代码

    下面我来为您详细讲解如何使用Python实现动态数组。 首先,什么是动态数组呢?简单来说,动态数组就是一个可以在运行时自动扩容的数组,它可以根据需要自动增加或减少存储空间。接下来,我们就来看看如何使用Python实现动态数组。 1. 使用Python内置列表实现动态数组 Python内置的列表(list)实际上就是一个动态数组,具有自动扩容的功能。我们可以通…

    python 2023年5月31日
    00
合作推广
合作推广
分享本页
返回顶部