1. 说明

 上次分享了Flask+Dash做图,WXXCX师兄给我留言说:感觉dash不如pyecharts好用,于是我学习了一下pyecharts。

 ECharts,缩写来自Enterprise Charts,商业级数据图表,一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE6/7/8/9/10/11,chrome,firefox,Safari等)。Pyecharts是python版本的echarts,与Dash相比,我个人更喜欢它的图片配色;在使用上它相似于matplotlib,不需要像Dash一样再去熟悉新的API和callback的逻辑;最喜欢的地方在于notebook可以调,flask也可以调,调试时和显示在网页上的图完全一样;它还支持地图显示,以及雷达图等等(Dash是否支持我没试过)。果然更加好用,整理如下。

2. 准备数据

import pyechartsattr = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
v1 = [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3]
v2 = [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3]

3. 柱图

bar = pyecharts.Bar("Title1", "Title2")
bar.add("v1", attr, v1, mark_line=["average"], mark_point=["max", "min"])
bar.add("v2", attr, v2, mark_line=["average"], mark_point=["max", "min"])
bar.render('test.html')
bar

image.png

4. 直方图

bar = pyecharts.Bar('Title1', 'Title2')
bar.add(name = 'v1', x_axis = attr, y_axis = v1, bar_category_gap = 0)
bar.render('test.html')
bar

5. 堆叠柱图

bar = pyecharts.Bar("Title1", "Title2")
bar.add('v1',attr,v1,is_stack = True) # is_stack = True才表示堆叠在一起
bar.add('v2',attr,v2,is_stack = True)
bar.render('test.html')
bar

6. 散点图

scatter = pyecharts.Scatter('Title1', 'Title2')
x = [i for i in range(0, len(attr))]
scatter.add("v1", x, v1)
scatter.add("v2", x, v2)
scatter.render('test.html')
scatter

7. 特效散点图

es = pyecharts.EffectScatter("Title1", "Title2")
es.add("v1", range(0, len(attr)), v1, legend_pos='center', effect_period=3, effect_scale=3.5, symbol='pin', is_label_show=True)
es.render("test.html")
es

8. 折线图

line = pyecharts.Line("Title1", "Title2")
line.add("v1", attr, v1, mark_point=['average'])
line.add("v2", attr, v2, mark_line=['average'], is_smooth=True)
line.render('test.html')
line

9. 饼图

pie = pyecharts.Pie("Title1", "Title2")
pie.add('v1', attr, v1, is_label_show=True, legend_pos='right',label_text_color=None, legend_orient='vertical', radius=[30, 75])
pie.render('test.html')
pie

10. 箱图

boxplot = pyecharts.Boxplot('Title1', 'Title2')
x_axis = ['v1','v2']
y_axis = [v1, v2]
yaxis = boxplot.prepare_data(y_axis)
boxplot.add("value", x_axis, y_axis)
boxplot.render('test.html')
boxplot

11. 多种类型图叠加

bar = pyecharts.Bar('Title1', 'Title2')
bar.add('v1',attr,v1)
line = pyecharts.Line()
line.add('v2',attr,v2)
overlop = pyecharts.Overlap()
overlop.add(bar)
overlop.add(line)
overlop.render('test.html')
overlop

12. 在网页中显示图表

 与flask框架结合,pythechart将图存成网页,再用flask显示该网页,注意运行前先建立templates目录,flask默认从该目录读取网页。如果运行以下程序没有问题,则在浏览器打开 http://localhost:9993 即可看到图片。

from flask import Flask
from sklearn.externals import joblib
from flask import Flask,render_template,url_for
import pyechartsserver = Flask(__name__)def render_test_1():attr = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]v1 = [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3]v2 = [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3]line = pyecharts.Line("Title1", "Title2")line.add("v1", attr, v1, mark_point=['average'])line.add("v2", attr, v2, mark_line=['average'], is_smooth=True)line.render('templates/bar01.html')@server.route('/')
def do_main():render_test_1()return render_template('bar01.html')if __name__ == '__main__':server.run(debug=True, port=9993, host="0.0.0.0")

做图工具pyecharts相关推荐

  1. python 数据可视化工具 -- pyecharts

    目录 初识pyecharts 一个商业分析案例带你熟悉常见的pyecharts图表 饼图 漏斗图 柱形图和条形图 简单折线图 堆叠折线图 阶梯折线图 面积折线图 仪表盘 水球图 词频统计 词云 散点图 ...

  2. 总奖金40万元,图神经网络赛道baseline发布!教你用DGL做图任务

    本文为2021 MAXP 系列公开课第二讲完整版直播回顾,由亚马逊云科技上海人工智能研究院张建博士主讲.介绍了图机器学习任务的概况,并着重讲解了本次大赛的图机器学习赛题,文中附基线模型开源地址. 在过 ...

  3. 直接用自己服务器做图床可以吗_我花 9 块钱搭了一个“私人图床”

    背景 之前一直把简书当做自己的私人"图床"来用,因为简书的Markdown编辑器非常稳定,实时保存加图片ctrl+v复制进去就能用的特征让我一直坚持在简书上首发自己写的东西,然后图 ...

  4. 【转】[完全免费] 在线UML Sequence Diagram 时序图工具 - 教程第3部分

    时序图教程 甲序列图描述了一组对象之间的相互作用参与协作(或情况),布置成按时间顺序; 它通过它们的"生命线"和它们发送给对方的消息来显示参与交互的对象. 什么是UML中的序列图? ...

  5. 非常好用的一款在线甘特图工具

    甘特图(Gantt chart)又叫横道图.条状图(Bar chart).它是在第一次世界大战时期发明的,以亨利·L·甘特先生的名字命名,他制定了一个完整地用条形图表进度的标志系统.甘特图内在思想简单 ...

  6. 海龟作图python小猪佩奇_python海龟做图20秒完成小猪佩奇,附源码!

    Python(发音:英[?pa?θ?n],美[?pa?θɑ:n]),是一种面向对象.直译式电脑编程语言,也是一种功能强大的通用型语言,已经具备近二十年的发展历史,成熟且稳定.它包含了一组完善并且容易理 ...

  7. android ui 切图工具,APP切图标注教程:UI设计切图标注的小工具实用技巧

    分享关于一篇UI设计师必须要懂的切图标注的小工具实用技巧,让你在跟开发工程师协作的时候更加得心应手. 设计师必备的UI切图小工具如下3大常用工具: 1.切图工具 Assistor PS 也是一款PS的 ...

  8. 四步学会使用ECharts做图

    前言:最近有些朋友抱怨用ECharts做统计图时难做,看官网很枯噪无味头又晕,那接下来我简单说下我是怎么四步做图的. 首先先引入安装ECarts依赖,使用webpack工具打包的可以使用命令行安装 n ...

  9. 简单好用的在线P图工具,一定记得收藏

    相信经常做设计的小伙伴都会利用PS来处理图片,且PS操作起来不是很简单.如果碰到需要给图片换底色,没有学过PS的小伙伴可能就无从下手,只能去寻求别人帮助了.那有没有操作简单,一学就会的在线p图工具呢? ...

  10. 什么是思维导图?有哪些好用的思维导图工具

    思维导图又叫做心智图,是利用图形化的方式进行发散性思维的一种工具,它把复杂性的知识体系转化为形象化的图形表示,更加形象具体.思维导图利用图形化的方式充分调动左右脑的能力,开启我们大脑的潜能. 思维导图 ...

最新文章

  1. PHP PDO 连接SQLSErver,PHP 使用 PDO 方式连接 sqlserver ,拼接 的 sql 命令总是报错
  2. RSA非对称加密算法之公钥和私钥详细介绍
  3. 数据可视化----我在寻找一款类似vfp或是access这样自带可视化风格的数据库或是键盘数据库...
  4. apache nginx 区别
  5. 如何在自己的网站中嵌入其他网站的页面?
  6. 【转】推荐一款Java反编译器,比较好用
  7. 用循环写出九九乘法表格。
  8. 魔兽世界-按键精灵脚本(1)-自动小宠物战斗
  9. c:\windows\ ntdetect failed
  10. 蔚来、小鹏、理想自动驾驶能力的纵向演进与横向比较
  11. 【电子书推荐】这几年看过的不错的电子书单
  12. web项目bug总结
  13. Java工具使用(导读)
  14. 静态成员变量与静态成员函数的声明与定义
  15. PHP associate with Flash or micromedia
  16. html css图片平铺整个页面,css 样式 图片平铺整个界面
  17. 香港劫匪盯上芯片,418 万元芯片在运输途中被劫
  18. 数字图像处理的招聘公司
  19. 电大计算机人文英语,电大人文英语3until1until8边学边练.docx
  20. AVR单片机笔记 mega16 PC口2345管脚

热门文章

  1. 开发工程师与研发工程师的区别
  2. 大唐凌烟阁开国廿四将
  3. 论文阅读 (九):A survey on instance selection for active learning (2012)
  4. 年龄和血压对照表,有必要了解!
  5. 挖金矿问题java课程设计_动态规划--国王挖金矿问题
  6. 《Elasticsearch 源码解析与优化实战》第18章:写入速度优化
  7. 企业级Web报表工具告诉你财务要做哪些数据分析
  8. 关于粮食浪费问题的调查报告
  9. java 合并pdf_用iText分割和合并pdf文件
  10. 列联表与独立性检验(一维列联表 二维列联表 三维列联表 ; 卡方检验 Fisher精确检验 Cochran-Mantel-Haenszel检验)