基于python的pyecharts大数据作图方法与简单修饰

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 引入在前期学习了一些数据处理操作之后,我们想要将其进行可视化处理,生成能直观感受的数据分析结果,以此来讲解给需要用到结果的人——或者让自己看得舒服——我们用pandas自带的作图工具有的时候不那么如人意,其可定制化程度不高,难以满足一些需求这个时候我们就需要用新的工具了——他就是pyecharts

引入


在前期学习了一些数据处理操作之后,我们想要将其进行可视化处理,生成能直观感受的数据分析结果,以此来讲解给需要用到结果的人——或者让自己看得舒服——

我们用pandas自带的作图工具有的时候不那么如人意,其可定制化程度不高,难以满足一些需求

这个时候我们就需要用新的工具了——

他就是pyecharts


一、什么是pyecharts


首先我们要知道一个东西——Echarts:

Echarts是一个由百度开源的商业级数据图表,它是一个纯JavaScript的图表库,在业界非常有名。

因为他可以为用户提供直观生动,可交互,可高度个性化定制的数据可视化图表,赋予了用户对数据进行挖掘整合的能力。

而pyecharts顾名思义,就是python和echarts连接起来,从而用python做出echarts图表的第三方库了


二、模块安装与导入


首先我们需要打开随便一个py运行环境(这里我们以jupyter notebook为例)

输入pip install pyecharts来安装该依赖


image.pngimage.png

image.png


获得如图的提示即为安装成功(其实没有报错就是安装成功)

加载必要依赖。


import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
#如果是pyecharts更早的版本可能不需要运行下面的命令
import pyecharts
pyecharts.globals._WarningControl.ShowWarning = False
import warnings
warnings.filterwarnings('ignore')#隐藏警告


image.png

隐藏警告是为了防止版本更新带来的一些的提示。基本操作学习中不需要考虑太多,否则容易进度太慢而造成拖延和不自信。


三、作图的通用流程


1. 选择图的类型

1. 导入图所需要的数据

如上,两步几乎涵盖了作图的所有进程。

以创建一个柱状图bar为例:

我们先要有一个数据(前期准备)

x=list(range(1,8))
#x=[2,1,4,5,7,8,10]
y=[114, 55, 27, 101, 125, 27, 105]

这样我们可以得到一个1~7的x值,以及可以与x一一对应的y值。正好适合作柱状图的数据

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

从pyecharts中引入我们需要的工具。然后就可以开始作图了!

bar = Bar()
bar.add_xaxis(list(x))
bar.add_yaxis("name", y)
bar.render_notebook()#用来在notebook中展示图形,使用render则会直接保存为html文件

第一行创建一个bar对象(选择图的类型),二三行是为了把数据导入(导入图所需要的数据)。

这样其实一个图就创建好了。我们为了更好地调试,用第四行代码把图在notebook中展示出来——

image.png

如图,创建过程非常丝滑。有空一定要亲自体验一下。echarts具有交互属性,你可以用鼠标移动到各个柱子上,他会显示出图所代表的名字以及xy值。非常好用


四、简单修饰


用pyecharts非常重要的原因之一是其可定制化和交互性。如何利用好这些优点,需要我们善于用代码修饰我们作出的图表。

使其符合我们的需要才是关键

下面来看看如何客制化一个柱状图bar:

Tip:做数据分析练习的时候有个十分头疼的问题是我们没有足够时候的数据。pyecharts库提供了一个非常人性化的小工具——faker,可以生成我们图表需要的数据,这样我们可以快速将重点精力集中在图表制作和测试:


from pyecharts.faker import Faker#用来产生伪数据的包
复制代码


接下来我们把相关变量直接放进我们的图标生成代码里,方便大家切身体会一下这些可以自定义的变量的位置和使用逻辑,毕竟实操才是最有效的学习码代码的方法。


c = (
    Bar(init_opts=opts.InitOpts(width="620px", height="300px"))
    .add_xaxis(Faker.choose())
    .add_yaxis("商家A", Faker.values())
    .add_yaxis("商家B", Faker.values())
    .set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例", subtitle="我是副标题"))
)
复制代码


这是一个python语句的写法。其实分开来一行一行写就像(三)中那样也是可以的。这里就理解成是从上到下依次对c执行这些操作。

Bar()生成bar图表(选择图表类型),add_xaxis()和add_yaxis()分别为x和y坐标创建名称和数据。global_opt中的title——opt参数中可以设置主标题副标题。

其中y的括号中第一个参数是图例名,即一个统计量。右边的是数据,我们用Faker的自动生成数据代替。 x则直接用Faker自动生成的商品名代替。

多说无益,直接看效果:c.render_notebook查看图表:


image.pngimage.png

image.png

生成过程非常丝滑,图表也非常好看。

快来开发出赏心悦目的数据图表吧~

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
5天前
|
数据处理 Python
Python 高级技巧:深入解析读取 Excel 文件的多种方法
在数据分析中,从 Excel 文件读取数据是常见需求。本文介绍了使用 Python 的三个库:`pandas`、`openpyxl` 和 `xlrd` 来高效处理 Excel 文件的方法。`pandas` 提供了简洁的接口,而 `openpyxl` 和 `xlrd` 则针对不同版本的 Excel 文件格式提供了详细的数据读取和处理功能。此外,还介绍了如何处理复杂格式(如合并单元格)和进行性能优化(如分块读取)。通过这些技巧,可以轻松应对各种 Excel 数据处理任务。
32 16
|
1天前
|
存储 索引 Python
反转Python列表的4种方法
反转Python列表的4种方法
|
2天前
|
Python
深入解析 Python 中的对象创建与初始化:__new__ 与 __init__ 方法
深入解析 Python 中的对象创建与初始化:__new__ 与 __init__ 方法
7 1
|
13天前
|
Python
python方法,传参20220101 计算与当前时间差
python方法,传参20220101 计算与当前时间差
|
13天前
|
存储 Python
Python中类方法、实例方法与静态方法的区别
这三种方法的正确使用可以使代码更加清晰、组织良好并且易于理解,从而有效地支持软件开发的面向对象编程范式。
12 1
|
1天前
|
Python
深入理解Python中的类方法、类实例方法和静态方法
深入理解Python中的类方法、类实例方法和静态方法
6 0
|
4天前
|
机器学习/深度学习 开发者 Python
Python中进行特征重要性分析的9个常用方法
在Python机器学习中,特征重要性分析是理解模型预测关键因素的重要步骤。本文介绍了九种常用方法:排列重要性、内置特征重要性(如`coef_`)、逐项删除法、相关性分析、递归特征消除(RFE)、LASSO回归、SHAP值、部分依赖图和互信息。这些方法适用于不同类型模型和场景,帮助识别关键特征,指导特征选择与模型解释。通过综合应用这些技术,可以提高模型的透明度和预测性能。
26 0
|
12天前
|
机器学习/深度学习 PyTorch TensorFlow
Python实现深度学习学习率指数衰减的方法与参数介绍
学习率指数衰减提供了一种高效的动态调整学习率的手段,帮助模型在不同训练阶段以不同的学习速度优化,有利于提升模型性能和训练效率。通过合理设置衰减策略中的参数,可以有效地控制学习率的衰减过程,实现更加精确的模型训练调优。
13 0
|
12天前
|
UED Python
Python requests库下载文件时展示进度条的实现方法
以上就是使用Python `requests`库下载文件时展示进度条的一种实现方法,它不仅简洁易懂,而且在实际应用中非常实用。
27 0
|
13天前
|
Python
pyecharts:一款python画图神器
pyecharts:一款python画图神器
24 0