当前位置: 首页 > 图灵资讯 > 技术篇> Python 中一个常用的数据可视化工具 pyecharts。

Python 中一个常用的数据可视化工具 pyecharts。

来源:图灵教育
时间:2023-07-18 11:30:38

  1. 简介

pyecharts 它是用来生成图表的 Python 库,基于 Echarts.js 构建,支持折线图、柱状图等多种数据可视化图表类型,并提供丰富的风格和数据交互功能。2. 安装使用 pip 命令可以很容易地安装 pyecharts:复制代码pip install 如果pyecharts需要使用更丰富的图表类型,扩展插件也可以额外安装 echarts-china-provinces-pypkg 和 echarts-countries-pypkg:复制代码pip install echarts-china-provinces-pypkgpip install echarts-countries-pypkg3. 使用教程3.1 首先,导入库,需要导入以下库:python复制代码fromm pyecharts import options as optsfrom pyecharts.charts import Linefrom pyecharts.faker import 其中,Faker,options 模块主要用于设置图表的各种选项,如标题、坐标轴、系列、标签等;charts 提供各种图表类型的模块;faker 模块可以生成各种随机数据。3.2 创建图表对象时,需要指定图表类型:python复制代码line = Line()3.3 设置图表选项可以使用 set_global_opts() 设置整个图表的全局选项,如标题、坐标轴、系列等。python复制代码line.set_global_opts(title_opts=opts.TitleOpts(title="折线图示例"),xaxis_opts=opts.AxisOpts(name="日期", type_="category", boundary_gap=False),yaxis_opts=opts.AxisOpts(name="销售额", type_="value"),)其中,TitleOpts 类别用于设置标题选项,AxisOpts 类别用于设置坐标轴选项。3.4 可以使用添加系列数据 add_xaxis() 和 add_yaxis() 添加横轴和纵轴数据的方法:python复制代码line.add_xaxis(Faker.choose())line.add_yaxis("系列名称", Faker.values(), markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max")]))其中,choose() 该方法可以随机生成横轴数据,values() 该方法可随机生成一些纵轴数据,MarkPointOpts 类别可设置标记点选项。若需添加多个系列数据,只需多次调用 add_yaxis() 方法即可。若需添加多个系列数据,只需多次调用 add_yaxis() 方法就可以了。3.5 渲染图最后,可以使用 render() 渲染生成图表的方法:python复制代码line.render("折线图.html")

其中,生成了参数 HTML 文件名。4. 官方 API 文档详细的 pyecharts API 可在官方文档中查看文档:https://www.tulingxueyuan.cn/d/file/p/20230718/nfghyjztft0 在示例代码下给出一个完整的折线图示例代码:python复制代码from pyecharts import options as optsfrom pyecharts.charts import Linefrom pyecharts.faker import Faker

line = Line()

line.set_global_opts(title_opts=opts.TitleOpts(title="折线图示例"),xaxis_opts=opts.AxisOpts(name="日期", type_="category", boundary_gap=False),yaxis_opts=opts.AxisOpts(name="销售额", type_="value"),)

line.add_xaxis(Faker.choose())line.add_yaxis("系列名称", Faker.values(), markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max")]))

line.render("折线图.html")