一个基于Python数据大屏可视化开源项目

‍‍

今天给大家介绍一个开源数据大屏可视化工具。

项目简介

这是一个基于Python开发的,结构简单的项目。可通过配置Json的数据,实现数据报表大屏显示。

优点:代码清晰、结构简单、配置Json数据实现

缺点:模板固定需要个性化的,需要修改代码。

技术架构

1、Python + Js + Css + Html开发。

2、报表采用echart插件。

项目结构

一个基于Python数据大屏可视化开源项目_第1张图片

使用

安装依赖

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple flask

运行

cd big_screen;
python app.py;

新增/编辑报表

在app.py修改SourceData,或者新增比如新增:MyReportData

@app.route('/')
def index():
    data = SourceData()
    return render_template('index.html', form=data, title=data.title)

新增报表,配置路由

@app.route('/my')
def index():
    data = MyReportData()
    return render_template('index.html', form=data, title=data.title)

报表与Json对应

在data.py配置对应报表对应Json的字段

class MyReportData(SourceDataDemo):
    def __init__(self):
        """
        按照 SourceDataDemo 的格式覆盖数据即可
        """
        super().__init__()
        with open('corp.json', 'r', encoding='utf-8') as f:
            data = json.loads(f.read())
        self.title = data.get('title')
        self.counter = data.get('counter')
        self.counter2 = data.get('counter2')
        self.echart1_data = data.get('echart1_data')
        self.echart2_data = data.get('echart2_data')
        self.echarts3_1_data = data.get('echarts3_1_data')
        self.echarts3_2_data = data.get('echarts3_2_data')
        self.echarts3_3_data = data.get('echarts3_3_data')
        self.echart4_data = data.get('echart4_data')
        self.echart5_data = data.get('echart5_data')
        self.echart6_data = data.get('echart6_data')
        self.map_1_data = data.get('map_1_data')

配置Json数据

{
  //报表名称与数据
  "title": "我的报表大数据",
  "counter": {
    "name": "企业总数量(全国)",
    "value": 46897675
  },
  "counter2": {
    "name": "企业总数量(一线城市)",
    "value": 6805564
  },
  //对应报表字段名称
  "echart1_data": {
    "title": "行业分布",
    "data": [{
      "name": "批发零售业",
      "value": 16881396
    },
    ......

报表示例

通用模板大数据

一个基于Python数据大屏可视化开源项目_第2张图片

全国企业大数据

一个基于Python数据大屏可视化开源项目_第3张图片

招聘大数据

一个基于Python数据大屏可视化开源项目_第4张图片

GitHub:https://github.com/TurboWay/big_screen

- End -

推荐阅读

  • 推荐一个最好用的高性能、低内存、跨平台的图片处理库

  • 一个基于.Net+Vue开发的开源权限工作流系统

  • 推荐一个不到2MB的C#开发工具箱,集成了上千个常用操作类

  • 推荐一个基于.NET Core 3.1开发开源的分布式任务调度系统

  • .Net服务器性能监控,应用耗时统一监控平台

专注分享编程知识、热门有用有趣的开源项目

你可能感兴趣的:(python,python,开源,flask)