我的编程空间,编程开发者的网络收藏夹
学习永远不晚

使用python调用echart画图

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

使用python调用echart画图

前言

之前说了如何使用阿里云的SDK获取云存储的值然后发送表格邮件,但是最近领导又发话了,说这个邮件每天一封看的有点审美疲劳,要顺应“数据可视化”的趋势,于是就要求画图,力求直观。要做到“从众多数据中突出特别数据,从特别数据中突出高价值数据”。我之前用python的matplotlib画过(https://rorschachchan.github.io/2018/02/27/使用matplotlib画图的一个脚本/ ),这一次尝试用echart来做图!

echart是不太良心的百度良心的开源作品,提供各种各样精美的作图方案,分分钟把图片做的高大上,吸引周围人的目光。不过我对前端的了解非常浅薄,但是没关系。这次使用pyechart插件!这个插件可以让python直接调用echart接口,选择需要的图形之后,直接往里插数据就好,简单粗暴见效快,而且支持3D,可以说是居家旅行常备物品。可以说,有了它,作图能力顶呱呱。感谢开发者大神们的辛苦工作!

作图

首先先需要安装pyecharts插件,命令是pip install pyecharts

然后我们就可以写一个简单的案例,如下:

    #!/usr/bin/env python
    #coding=utf-8
    from pyecharts import Bar    #导入第三方库

    #attr = ["{}day".format(i) for i in range(1, 8)]    #这样的话X坐标就是1day、2day、3day...
    attr = ["Mon", "Feb", "Wed", "Thu", "Fri", "Sat", "Sun"]    #这样X坐标就是星期
    v1 = [1.49, 2.09, 4.03, 2.23, 5.26, 7.71, 7.56]        
    v2 = [0.3, 0.9, 0.2, 0.4, 0.7, 0.7, 0.6]
    v3 = [18.15, 13.22, 11.28, 17.99, 18.7, 19.7, 15.6]

    bar = Bar("XXX情况总览", "本图表展示过去一周的ABC情况")        #这里是主标题和副标题
    bar.add("A值", attr, v1, mark_line=["average"], mark_point=["max", "min"])    #每一个值的名称以及要展现平均值和最大最小值
    bar.add("B值", attr, v2, mark_line=["average"], mark_point=["max", "min"])
    bar.add("C值", attr, v3, mark_line=["average"], mark_point=["max", "min"])    
    bar.render('/tmp/111.html')        #在/tmp文件夹里生成一个111.html文件

如果服务器里有nginx,那么把这个html文件放到nginx/html路径里,再在浏览器里打开就会看到这样的图,我这里就直接把html拽到windows里打开了:
使用python调用echart画图

而且还可以通过点击网页上“A值”、“B值”、“C值”就可以达到屏蔽相应值的效果,而且如果点击红色箭头的“数据视图”,还可以直接看到对应的数据,非常贴心非常屌,如图:
使用python调用echart画图

如果你觉得图片有点小,那么可以修改这个地方:bar = Bar("XXX情况总览", "本图表展示过去一周的ABC情况",width=1000,height=900),我这里把宽和高分别从默认值调成了1000和900。

如果想要在一个html里展现多个图,比如要做三个柱状图,那么example如下:

    #!/usr/bin/env python
    #coding=utf-8
    from pyecharts import Bar, Grid

    attr = ["一班", "二班", "三班", "四班"]
    v1 = [54, 81, 32, 32] 
    v2 = [68, 69, 27, 32] 
    bar = Bar("赞成票","本图表展示赞成票情况")
    bar.add("年纪长", attr, v1, mark_point=["max", "min"])
    bar.add("副年纪长", attr, v2, mark_point=["max", "min"])

    attr2 = ["一班", "二班", "三班", "四班"]
    x1 = [2, 0, 0, 1]
    x2 = [1, 3, 0, 2]
    bar2 = Bar("反对票","本图表展示反对票情况",title_top='bottom',title_color='#1d12eb')            #title_color是标题颜色,这个跟html的颜色取值一样
    bar2.add("年纪长", attr2, x1, mark_point=["max", "min"])
    bar2.add("副年纪长", attr2, x2, mark_point=["max", "min"])

    attr3 = ["一班", "二班", "三班", "四班"]
    y1 = [2, 0, 0, 1]
    y2 = [2, 0, 0, 1]
    bar3 = Bar("弃权票","本图表展示弃权票情况",title_pos='right',title_color='#eb1212')             #title_pos是标题的位置,如果不特殊说明,会重叠
    bar3.add("年纪长", attr3, y1, mark_point=["max", "min"])    
    bar3.add("副年纪长", attr3, y1, mark_point=["max", "min"])

    grid = Grid()    
    grid.add(bar, grid_width="40%", grid_height="30%", grid_bottom="60%", grid_right="55%")        #grid_height和grid_width是每一个小图的大小
    grid.add(bar2, grid_width="40%", grid_height="30%", grid_bottom="60%", grid_left="55%")        #grid_bottom和grid_top是垂直位置
    grid.add(bar3, grid_width="40%", grid_height="30%", grid_top="60%", grid_right="55%")        #grid_right和grid_left是水平位置
    grid.render('/tmp/grid.html')    #在/tmp文件夹里生成一个grid.html文件

使用python调用echart画图

上面的数字都是我举例子虚拟的,实际情况中,这些数字都应该是存储在redis这样的数据库里,然后取出来使用。

上面的两个例子仅仅是pyechart使用的冰山一角,如果想更多的了解,请去看一下文末pyechart的中文说明文档,里面内容特别丰富!

参考资料

http://echarts.baidu.com
http://pyecharts.org/#/zh-cn/prepare

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

使用python调用echart画图

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

使用python调用echart画图

前言之前说了如何使用阿里云的SDK获取云存储的值然后发送表格邮件,但是最近领导又发话了,说这个邮件每天一封看的有点审美疲劳,要顺应“数据可视化”的趋势,于是就要求画图,力求直观。要做到“从众多数据中突出特别数据,从特别数据中突出高价值数据”
2023-01-31

Python画图时怎么调用本地字体

小编给大家分享一下Python画图时怎么调用本地字体,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!matplotlib中的字体文件被封装在font_manager
2023-06-22

react使用echart绘制地图的案例

这篇文章主要介绍了react使用echart绘制地图,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
2023-01-11

如何使用Python画几何图形动画

要使用Python来绘制几何图形动画,你可以使用一些库来帮助你完成这个任务,如matplotlib、pygame或turtle。下面是一个使用turtle库来绘制一个简单的几何图形动画的示例:```pythonimport turtle#
2023-08-20

怎么使用python画曲线图

要使用Python画曲线图,可以使用matplotlib库。下面是一个简单的示例代码:```pythonimport matplotlib.pyplot as plt# 准备数据x = [1, 2, 3, 4, 5]y = [2, 4, 6
2023-10-12

怎么在python中使用OpenCV画图

怎么在python中使用OpenCV画图?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。python有哪些常用库python常用的库:1.requesuts;2.
2023-06-14

怎么使用python plot画柱状图

要使用Python的Matplotlib库来绘制柱状图,可以按照以下步骤操作:1. 导入必要的库:```pythonimport matplotlib.pyplot as plt```2. 准备数据:```pythonx = [1, 2,
2023-09-20

Python中如何使用plot()函数画图

这篇文章主要介绍“Python中如何使用plot()函数画图”,在日常操作中,相信很多人在Python中如何使用plot()函数画图问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python中如何使用plot
2023-07-02

怎么使用python sns.countplot()绘画条形图

这篇文章主要介绍了怎么使用python sns.countplot()绘画条形图的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用python sns.countplot()绘画条形图文章都会有所收获,下面
2023-07-02

Python用turtle模块画图

学习使用模块turtle画图功能,主要记住几个参数import turtle #导入turtle画图模块turtle.showturtle() #调出turtle画板turtle.forward(100) #坐标前进100个位置tu
2023-01-31

python画图常用颜色

'.' point marker',' pixel marker'o' circle marker'v' triangle_down marker'^' triangle_up m
2023-01-31

使用Python的turtle模块画图的方法

简介:turtle是一个简单的绘图工具。它提供了一个海龟,你可以把它理解为一个机器人,只听得懂有限的指令。 1.在文件头写上如下行,这能让我们在语句中插入中文 #-*-coding:utf-8-*- 2.用importturtle导入tur
2022-06-04

Python使用turtle库画任意图的方法

这篇文章主要介绍“Python使用turtle库画任意图的方法”,在日常操作中,相信很多人在Python使用turtle库画任意图的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python使用turtl
2023-06-29

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录