欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

利用pyecharts做数据演示

程序员文章站 2022-07-15 14:22:24
...

环境: Python 2.7  + pyecharts 0.3.1 + Flask 0.12.2

pyecharts 是一个用于生成 Echarts 图表的类库。实际上就是 Echarts 和 Python 的对接。 Echarts 是百度开源的一个数据可视化 JS 库。主要用于数据可视化。

安装:

pip install pyecharts 

先帖两个效果:

利用pyecharts做数据演示

利用pyecharts做数据演示利用pyecharts做数据演示

实现代码:

# coding=UTF-8
#  flask echart  实验
from flask import Flask, render_template
app = Flask(__name__)

@app.route('/')
def app_0():
    return "<h1>EChart数据演示</h1>  <br> <a href='/one'>柱状图</a> <br> <a href='/two'>仪表盘</a>"

@app.route('/one')
def app_1():
    from pyecharts import Bar

    bar = Bar("一周邮件量", "海南邮政数据中心")
    bar.add("当日递", ["周一", "周二", "周三", "周四", "周五", "周六","周日"], [5, 20, 36, 10, 75, 90,28])
    bar.add("次日递", ["周一", "周二", "周三", "周四", "周五", "周六","周日"], [25, 10, 56, 70, 25, 40,88])
    ret_html = render_template('pyecharts.html',
                           myechart=bar.render_embed(),
                               mytitle=u"数据演示",
                           host='/static',
                           script_list=bar.get_js_dependencies())
    return ret_html

@app.route('/two')
def app_2():
    from pyecharts import Gauge

    gauge = Gauge("业务量完成情况","函件",width=600, height=300)
    gauge.add("海口", "", 86.66,scale_range=[0,100],angle_range=[180,0])

    gauge1 = Gauge("业务收入完成情况","函件",width=600, height=300)
    gauge1.add("海口", "", 88.99)
    ret_html = render_template('pyecharts.html',
                           myechart=gauge.render_embed()+gauge1.render_embed(),
                               mytitle=u"数据演示",
                           host='/static',
                           script_list=gauge.get_js_dependencies())
    return ret_html

if __name__ == '__main__':

    app.run(host='0.0.0.0',port=5018)

代码中的数据 , 可以从csv读取, 也可以从数据库读取。

拷贝相关的 js 文件到 static 目录

利用pyecharts做数据演示

pycharts.html 文件:

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <title>{{mytitle}}</title>
    {% for jsfile_name in script_list %}
    <script src="{{host}}/{{jsfile_name}}.js"></script>
    {% endfor %}
</head>

<body>
  {{myechart|safe}}
</body>

</html>

运行后, 

利用pyecharts做数据演示

用浏览器打开链接: http://127.0.0.1:5018/   就可以查看效果了。