• Java编程开发之数据图表分析模型


    6P6qIJ.jpg

    数据统计分析

    多曲线图表分析实现

    基本需求分析

    假设在怪兽出没的年岁,加上年关在即,需要统计分析各个道路卡口车流量出入统计,主要从车流量和车牌地角度出发。如图所示的业务需求:

    道路卡口-车流量分析:

    道路卡口-车流量分析

    道路卡口-车牌地分析:
    道路卡口-车牌地分析

    1. 主要从车流量和车牌地2个纬度去分析与统计对应的流量数据
    2. 横向与纵向分析:X轴和Y轴各自有3条曲线[总数=进关数+出关数]
    3. 不同的时间纬度:按天统计[默认当天以及最近30天]和按月统计
    4. 不同道路卡口统计:不同卡口以及卡口组统计数据

    业务需求分析

    道路卡口-车流量分析

    道路卡口-车流量分析

    1. 统计时间维度:按天统计[最近30天和当前某天的统计数据]和按月统计
    2. 横向对比分析:以采集时间为X轴,展示某一天的整点和半小时时刻的车辆进关与出关数量,以及车流量总数
    3. 纵向对比分析:以车流量为Y轴,展示某一天的整点和半小时时刻的车辆进关与出关数量,以及车流量总数
    4. 图表数据指标:车流量总数, 进关暑数量以及出关数量
    道路卡口-车牌地分析

    道路卡口-车牌地分析

    1. 统计时间维度:按天统计[最近30天和当前某天的统计数据]和按月统计
    2. 横向对比分析:以车牌归属地为X轴,展示对应所属地区的相关车辆进关与出关数量,以及车流量总数
    3. 纵向对比分析:以车流量为Y轴,展示对应所属地区的相关车辆进关与出关数量,以及车流量总数
    4. 图表数据指标:车流量总数, 进关暑数量以及出关数量
    5. 数据排序:按照风险等级排序,对应的车牌流量分析

    编码逻辑分析与实现

    1. 定义图表分析数据模型[Analysis Model]
    // 定义数据模型
    Map<String, Object> dataModel =Maps.newConcurrentMap();
    // 定义X与Y轴数据模型
    Map<String, Object> dataMap = Maps.newConcurrentMap();
    // 车流量总数
    dataModel.put("total", dataMap);
    // 进关总数
    dataModel.put("enter", dataMap);
    // 出关总数
    dataModel.put("leave", dataMap);
    
    1. 确定X轴与Y轴坐标系数据:
    // 定义X与Y轴数据模型
    Map<String, Object> dataMap = Maps.newConcurrentMap();
    // 定义X轴数据模型
    List<String> xList = Lists.newLinkedList();
    // 定义Y轴数据模型
    List<Object> yList = Lists.newLinkedList();
    // 定义指标数据模型
    BigDecimal count = BigDecimal.ZERO;
    // .... ToDO 业务代码实现
    dataMap.put("xAxis",xlist);
    dataMap.put("yAxis",yList);
    dataMap.put("count",count.intValue());
    

    [⚠️注意事项]
    1.上述模型属于复合型数据分析列表数据模型
    2.简单数据模型分析,一般只用:

    // 定义X与Y轴数据模型
    Map<String, Object> dataMap = Maps.newConcurrentMap();
    // 定义X轴数据模型
    List<String> xList = Lists.newLinkedList();
    // 定义Y轴数据模型
    List<Object> yList = Lists.newLinkedList();
    // .... ToDO 业务代码实现
    dataMap.put("xAxis",xlist);
    dataMap.put("yAxis",yList);
    

    饼状图表分析实现

    假设在怪兽出没的年岁,加上年关在即,需要统计分析各个道路卡口车流量出入的占比,主要从风险等级和风险区角度出发。如图所示的业务需求:

    风险等级分析
    风险等级分析

    1. 主要从风险等级[高,中,低]统计分析数据的占比
    2. 统计时间维度:按照天统计[当天],按照周统计[最近七天]以及按照月统计[最近30天的数据]

    风险区域比例
    风险区域比例

    1. 主要从风险区域维度统计车牌归属地分析数据的占比
    2. 统计时间维度:按照天统计[当天],按照周统计[最近七天]以及按照月统计[最近30天的数据]

    版权声明:本文为博主原创文章,遵循相关版权协议,如若转载或者分享请附上原文出处链接和链接来源。

  • 相关阅读:
    20160813上午训练记录
    [bzoj 2159]Crash的文明世界
    【娱乐】高端小游戏Manufactoria
    【教程】如何正确的写一个Lemon/Cena的SPJ(special judge)
    [CF]codeforces round#366(div2)滚粗记
    洛谷 [P3265] 装备购买
    POJ 1830 开关问题
    洛谷 [P4035] 球形空间生成器
    BZOJ 2973 入门OJ4798 石头游戏
    洛谷 [P1939] 矩阵加速数列
  • 原文地址:https://www.cnblogs.com/mazhilin/p/14466189.html
Copyright © 2020-2023  润新知