【Python 实战基础】如何绘制桑基图分析人口流动和年龄数据
目录
一、实战场景
二、主要知识点
文件读写
基础语法
字符串处理
文件生成
数据构建
三、菜鸟实战
1、创建 python 文件
2、运行结果
一、实战场景
实战场景:如何绘制桑基图分析人口流动和年龄数据
二、主要知识点
文件读写
基础语法
字符串处理
文件生成
数据构建
三、菜鸟实战
马上安排!
1、创建 python 文件
"""Author: 菜鸟实战实战场景: 如何绘制桑基图分析人口流动和年龄数据"""# 导入系统包import platformimport jsonfrom flask import Flask, render_templatefrom pyecharts import options as optsfrom pyecharts.charts import *print("Hello,菜鸟实战")print("实战场景: 如何绘制桑基图分析人口流动和年龄数据 \n")web = Flask(__name__)# 构建数据,读取json数据with open("product.json", "r", encoding="utf-8") as f: j = json.load(f)def sankey_charts() -> Sankey(): # 实例化对象 sankey = Sankey() sankey.add( "", nodes=j["nodes"], links=j["links"], pos_top="10%", # 每个桑基图矩形的宽度 node_width=30, # 桑基图中每一列任意两个矩形节点之间的间隔 node_gap=12, is_draggable=True, layout_iterations=5, itemstyle_opts=opts.ItemStyleOpts(border_width=2, border_color="#aaa"), linestyle_opt=opts.LineStyleOpts(opacity=0.8, curve=0.5, color='source'), label_opts=opts.LabelOpts(position='right'), ) # 全局置标题、标签 sankey.set_global_opts( title_opts=opts.TitleOpts(title="如何绘制桑基图分析人口流动和年龄数据", subtitle="菜鸟实战,坚持学习!"), ) return sankey# 获取对象p = sankey_charts()# 绘制图形。path为指定路径,生成HTML文件的一个路径p.render('./templates/sankey_charts.html')# 添加路由显示图表@web.route('/')def index(): return render_template('sankey_charts.html')if __name__ == "__main__": # 运行项目 web.run(debug=False)print("Python 版本", platform.python_version())
2、运行结果
Hello,菜鸟实战
实战场景: 如何绘制桑基图分析人口流动和年龄数据* Serving Flask app 'py041' (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000 (Press CTRL+C to quit
菜鸟实战,持续学习!