【python 可视化】pyecharts + Flask 使用指南

来源:互联网 发布:淘宝怎么能提高销量 编辑:程序博客网 时间:2024/06/15 21:55

本指南会以一个小的 Flask 项目为例,说明如何在 Flask 中使用 pyecharts。请确保你已经安装 Flask,还没安装请执行 pip install flask 或其他方式安装。

Step 0: 首先新建一个 Flask 项目

Linux/macos 系统

$ mkdir flask-echarts$ cd flask-echarts$ mkdir templates

Windows 系统

新建一个 flask-echarts 文件夹,在其下新建 templates 子文件夹。

Step 1: 为项目提供自己的模板

将下面 html 模板代码保存为 pyecharts.html 文件并移至上一步新建的 templates 文件夹中。

<!DOCTYPE html><html><head>    <meta charset="utf-8">    <title>Proudly presented by ECharts</title>    {% for jsfile_name in script_list %}    <script src="{{host}}/{{jsfile_name}}.js"></script>    {% endfor %}</head><body>  {{myechart|safe}}</body></html>

Step 2: 调用 chart_instance.render_embed() 方法渲染图表

请将下面的代码保存为 server.py 文件并移至项目的根目录下。

import randomfrom pyecharts import Scatter3Dfrom pyecharts.constants import DEFAULT_HOSTfrom flask import Flask, render_templateapp = Flask(__name__)@app.route("/")def hello():    s3d = scatter3d()    return render_template('pyecharts.html',                           myechart=s3d.render_embed(),                           host=DEFAULT_HOST,                           script_list=s3d.get_js_dependencies())def scatter3d():    data = [generate_3d_random_point() for _ in range(80)]    range_color = [        '#313695', '#4575b4', '#74add1', '#abd9e9', '#e0f3f8', '#ffffbf',        '#fee090', '#fdae61', '#f46d43', '#d73027', '#a50026']    scatter3D = Scatter3D("3D scattering plot demo", width=1200, height=600)    scatter3D.add("", data, is_visualmap=True, visual_range_color=range_color)    return scatter3Ddef generate_3d_random_point():    return [random.randint(0, 100),            random.randint(0, 100),            random.randint(0, 100)]if __name__ == "__main__":    #运行项目    app.run(debug = True)

script_list 是 Page() 类渲染网页所需要依赖的 echarts js 库,依赖的库的数量取决于所要渲染的图形种类。

host 是 echarts js 库的地址,默认的地址为 http://chfw.github.io/jupyter-echarts/echarts 当然,如果你愿意你也可以改变这个地址,先克隆 https://github.com/chfw/jupyter-echarts 然后将 echarts 文件夹挂载在你自己的服务器上即可。

此时 flask-echarts 目录下为

├── server.py
└── templates
└── pyecharts.html

Step 3: 运行项目

Linux/macos 系统

$ export FLASK_APP=server.py$ flask run* Serving Flask app "server"* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

Windows 系统

$ set FLASK_APP=server.py$ flask run* Serving Flask app "server"* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

效果展示:
这里写图片描述

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 报关时通关单号没录怎么办 公司注销了行政许可证怎么办呢 报关项数超过50项怎么办 出口报关件数报多了怎么办 关税少交被海关缉私查到怎么办 外贸报关hs编码报错怎么办 报关金额少报了怎么办 进口报关金额少报了怎么办 报关重量报少了怎么办 金额报多100倍怎么办 ems没扫描到单号怎么办 回国海关被税了怎么办 代购买错东西了怎么办 征信报告有逾期怎么办 evus信息填错了怎么办 清关一个月了该怎么办 清关一直不发怎么办 清关一个月了怎么办 香港ems到西安海关税怎么办 寄东西被海关扣留怎么办 天津港新舱单品名错误核销怎么办 移动手机不能用联通卡怎么办 移动手机联通卡网速卡怎么办 移动手机不支持联通4g怎么办 汽车分离轴承异响怎么办 至尊宝被冻结了怎么办 qq冻结了至尊宝怎么办 至尊宝没办法申诉怎么办 至尊宝qq被冻结怎么办 未满16岁怎么办手机卡 联想预装的office卸载怎么办 win10激活后无法启动怎么办 移动电话卡没用了没注销怎么办 快捷快递客服热线一直打不通怎么办 牛奶乳加钙咀嚼片吃多了怎么办 三生骗了我该怎么办 国珍产品新时代卡怎么办 三个月大的宝宝对眼怎么办 9月大婴儿眼睛对眼怎么办 30岁眼部有皱纹怎么办 才24岁眼部皱纹怎么办