Python利用pyecharts实现数据可视化的示例代码

 更新时间:2024年09月08日 09:23:54   作者:肥罗且玫瑰  
Pyecharts是一个用于生成 Echarts 图表的 Python 库,Echarts 是一个由百度开源的数据可视化工具,它提供的图表种类丰富,交互性强,兼容性好,非常适合用于数据分析结果的展示,本文将给大家介绍Python利用pyecharts实现数据可视化,需要的朋友可以参考下

前言

小编我今天闲来无事,打算学习一下py,结果你猜怎么着,竟然看到py可以将数据可视化,做成报表显示,这对于一直学Java的我来说,这东西可太东西了,这要是不学一下你受得了吗?高低得学他一下啊。

这个py数据可视化也是用了第三方技术叫做Echarts,是由百度开发得一个数据可视化的框架,本来嘛使用于JS的,但是py那么火,自然他也就提供了py可用的第三方包了,但是有没有提供Java的jar包呢,这个有时间倒是可以去考察一下。

JSON数据格式的转换

这个东西既然扯到数据了,JSON是逃不掉的,虽然我知道这玩意大家很熟了,但是我还是得水一下文章的。JSON是一种轻量级得数据交互格式。可以按照JSON指定得格式去组织和封装数据。本质上就是一个带有特定格式的字符串。JSON主要就是一种在各个编程语言中流通的数据格式,负责不同编程语言中的数据传递和交互。类似于国际通用语言英语,中国通用语言普通话。

具体格式就像上面这样,其实就和py中定义字典或者列表内部嵌套字典差不多,键:值,不同键用逗号隔开。所以在py中去实现Python数据和Json数据的相互转换倒是很方便,我们只要导入对应的json模块,然后使用里面提供好的方法就好了。

下面我们就来演示一下json模块的使用吧,因为存在中文的编码问题,所以我们还需要传入一个关键参数ensure_ascii=False

import json
 
data = [{"name": "张大山", "age": 11}, {"name": "王大锤", "age": 13}, {"name": "赵小虎", "age": 16}]
 
# python 转 json
json_str = json.dumps(data, ensure_ascii=False)
print(type(json_str))
print(json_str)
 
# json 转 python
s = '[{"name":"张大山","age":11},{"name":"王大锤","age":13},{"name":"赵小虎","age":16}]'
l = json.loads(s)
print(type(l))
print(l)

以上就是py实现JSON数据格式互相转换,主意好列表和字典的格式后就dumpsloads两个方法。

pyecharts简介和入门使用

通过前面我们也知道了pyecharts就是一款第三方可视化数据框架,下面这个就是pyecharts的官网

https://05x-docs.pyecharts.org/#/zh-cn/prepare

官网其实还是挺好玩的,有好多报表图模型,想用哪个就可以参考它的代码,然后照葫芦画瓢就可以实现出来。下面这个是pyecharts的一个画廊网址也是挺不错的。

https://gallery.pyecharts.org/#/README

至于怎么安装pycharts,其实分为两种方式,第一种就是我们可以通过命令行来安装。如果你写代码用的是第二种就是通过pyCharm来安装。

第一种我们win加r输入cmd打开命令行窗口,接着输入下面这行命令直接回车等待下载完成就好了。

pip install pyecharts

接着检验是否安装好了,我们可以通过输入python,然后尝试import pyecharts导入一下,如果没有问题,就证明导入成功了。

第二种方法就是我们可以通过右下角的设置里的解释器设置中的添加解释器搜索pyecharts进行安装就好了。

接着我们来看看pyecharts如何使用,其实这一块呢也是非常简单,我们只需要照着官网的模板照葫芦画瓢就好了 ,我们就来做一个折线图图像吧。这一块我们首先就是要导入Line这个类,顾名思义就是来画线的。这里我们用到了两个方法,一个是add_xaxis()用来标明x轴的数据项有哪些,add_yaxis()用来标明y轴数据项表示的内容和数据值。这一块第一个数据项不能省略,因为你总不能y轴都不表示什么含义吧,接着我们就可以调用render方法就可以将代码生成图像。

# 导包
from pyecharts.charts import Line
 
# 创建一个折线图对象
line = Line()
# 给折线图对象添加x轴的数据
line.add_xaxis(["中国","美国","英国"])
# 给折线图对象添加y轴的数据
line.add_yaxis("GDP",[30,20,10])
# 通过render方法,将代码生成为图像
line.render()

接着我们右键运行,就可以看到我们当前目录下多了一个叫render.html的文件,相信你也知道这是一个前端界面文件,感兴趣的可以打开看看,我们直接用浏览器打开就会得到我们上面绘制的折线图了。

其实上面这个图片看着还是有点单调的,我们还可以给他添点和数据无关的东西,比如标题,工具箱,  鼠标移动效果等。这些叫做全局配置选项,而上面我们配置的叫做系列配置选项。配置全局配置选项其实也很简单,照着官网找到我们想要的直接CV就好了。 

# 设置全局配置项
line.set_global_opts(
    # 设置标题内容以及位置
    title_opts=TitleOpts(title="GDP展示", pos_left="center", pos_bottom="1%"),
    # 设置图例是否显示
    legend_opts=LegendOpts(is_show=True),
    # 设置工具箱是否显示
    toolbox_opts=ToolboxOpts(is_show=True),
    # 设置视觉映射是否显示
    visualmap_opts=VisualMapOpts(is_show=True),
)
 
# 通过render方法,将代码生成为图像
line.render()

这里我是配置好了标题,图例,工具箱和鼠标移动效果,当然你还可以配置些别的,这里只是演示用法。记住我们要把render()方法放在最后,不然就设置不成功了。

这里我把鼠标放在上面确实有了显示,下方也多了一个标题,右上角也多了一个工具箱,工具箱支持很多功能例如保存图片,切换柱状图,展示数据等等,功能还是非常丰富的。 

到这里我们pyecharts的入门使用就到此为止了,是不是特别简单,我们只需要把官网的模板拿过来照葫芦画瓢就好了。

这东西上手还是挺简单的,只要可以拿到JSON数据,然后照葫芦画瓢就好了,业务在于如何拿到JSON数据然后转换,绘制可视化图形就是美工了。

以上就是Python利用pyecharts实现数据可视化的示例代码的详细内容,更多关于Python pyecharts数据可视化的资料请关注脚本之家其它相关文章!

相关文章

  • 浅谈Python 列表字典赋值的陷阱

    浅谈Python 列表字典赋值的陷阱

    今天小编就为大家分享一篇浅谈Python 列表字典赋值的陷阱,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Python嵌套列表转一维的方法(压平嵌套列表)

    Python嵌套列表转一维的方法(压平嵌套列表)

    今天小编就为大家分享一篇Python嵌套列表转一维的方法(压平嵌套列表),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • Python读写mat文件操作指南(使用scipy.io)

    Python读写mat文件操作指南(使用scipy.io)

    Matlab是一个非常好用的矩阵计算分析软件,然而随着深度学习的发展,Python语言也逐渐成为人们的常用编程语言,这篇文章主要给大家介绍了关于Python使用scipy.io读写mat文件的相关资料,需要的朋友可以参考下
    2023-06-06
  • Django框架之路由用法

    Django框架之路由用法

    这篇文章介绍了Django框架之路由的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • 一文带你探寻Python中的装饰器

    一文带你探寻Python中的装饰器

    这篇文章就来和大家详细讲一讲Python中装饰器的相关知识,文中的示例代码讲解详细,对我们深入了解Python有一定的帮助,感兴趣的可以了解一下
    2023-04-04
  • python中使用PIL制作并验证图片验证码

    python中使用PIL制作并验证图片验证码

    本篇文章给大家分享了python中使用PIL制作并验证图片验证码的具体代码以及说明,需要的朋友参考下吧。
    2018-03-03
  • python3中类的重点与难点:类属性和实例属性的区别说明

    python3中类的重点与难点:类属性和实例属性的区别说明

    这篇文章主要介绍了python3中类的重点与难点:类属性和实例属性的区别说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • Python爬虫与防反爬虫策略从入门到实战

    Python爬虫与防反爬虫策略从入门到实战

    本文将从基础的爬虫原理和库介绍开始,逐步深入,通过实际示例代码,带领读者学习Python爬虫的使用和技巧,掌握从简单到复杂的爬虫实现
    2024-01-01
  • python3 与python2 异常处理的区别与联系

    python3 与python2 异常处理的区别与联系

    这篇文章主要介绍了python3 与python2 异常处理的区别与联系的相关资料,需要的朋友可以参考下
    2016-06-06
  • 10个Python Itertools方法助你事半功倍

    10个Python Itertools方法助你事半功倍

    itertools模块就是一个很好的例子,它为开发者提供了许多强大的工具,可以用更短的代码来操作Python的可迭代对象,本文主要介绍了Python中itertools高效迭代工具,感兴趣的可以了解一下
    2024-04-04

最新评论