统计数据组合成echarts图表

统计数据组合成echarts图表

记录一下,有些数据库没有专门创建日期表,但是有些需求是需要我们按照日期统计数据并制作报表,这就需要我们自己组装数据了,话不多说上干货。下面代码以按年组装数据,按日组装数据可在文章尾部查看提示。

传入数据类型JSONObject

/**
data1,data2,data3 需要组装的数据,可根据实际需求自行增删
s1,s2,s3 报表所需要的字段
*/
public static JSONObject monthEachYearUtil(JSONObject data1,
                                        JSONObject data2, JSONObject data3, String s1,
                                        String s2, String s3)
            throws ParseException {
        // 转换成echart报表需要的数据
        // 数据对齐,都按1-12月排
        JSONObject o = null;
        double v1 = 0;
        double v2 = 0;
        double v3 = 0;
        String key = null;
        JSONArray arr= new JSONArray();
        JSONArray list1 = new JSONArray();
        for (int i = 1; i <= 12; i++) {
            arr.add(i + "月");
            key = "" + i;
            //key = (i < 10 ? "0" + i : "" + i); 统计月份类似于01这种使用这个组装
            o = new JSONObject();
            o.put("date", i + "月");
            if (data1.containsKey(key)) {
                v1 = data1.getDoubleValue(key);
            } else {
                v1 = 0;
            }
            if (data2.containsKey(key)) {
                v2 = data2.getDoubleValue(key);
            } else {
                v2 = 0;
            }
            if (data3.containsKey(key)) {
                v3 = data3.getDoubleValue(key);
            } else {
                v3 = 0;
            }
            o.put(s1, v1);
            o.put(s2, v2);
            o.put(s3, v3);
            list1.add(o);
        }
        JSONObject data = new JSONObject();
        data.put("dateTime", arr);
        data.put("data", list1);
        return data;
    }

传入数据类型List集合

/**
list1、list2 需要组装的数据 可根据需要统计的list集合数量自行增删
s1、s2 返回报表的字段
*/
 public static JSONObject getEchart(List<JSONObject> list1, List<JSONObject> list2, String s1, String s2) {
        JSONObject data1 = new JSONObject();
        JSONObject data2 = new JSONObject();
        for (JSONObject o : list1) {
        //month 统计结果的月份  value 该月份对应的值
            data1.put(o.getString("month"), o.getDouble("value"));
        }
        for (JSONObject o : list2) {
        //month 统计结果的月份  value 该月份对应的值
            data2.put(o.getString("month"), o.getDouble("value"));
        }
        JSONArray arr = new JSONArray();
        JSONArray list = new JSONArray();
        JSONObject o = null;
        String key = null;
        double v1 = 0;
        double v2 = 0;
        for (int i = 1; i <= 12; i++) {
            arr.add(i + "月");
            key = "" + i;
            //key = (i < 10 ? "0" + i : "" + i); 统计月份类似于01这种使用这个组装
            o = new JSONObject();
            o.put("date", i + "月");
            if (data1.containsKey(key)) {
                v1 = data1.getDoubleValue(key);
            } else {
                v1 = 0;
            }
            if (data2.containsKey(key)) {
                v2 = data2.getDoubleValue(key);
            } else {
                v2 = 0;
            }
            o.put(s1, v1);
            o.put(s2, v2);
            list.add(o);
        }
        JSONObject data = new JSONObject();
        data.put("dateTime", arr);
        data.put("data", list);
        return data;
    }

总结

常用数据统计的数据类型是这两种,也要其他的数据类型需要统计的,不过区别不是很大,这种方法也是把得到的数据直接遍历一遍再重新赋值组装,按照天数的统计原理也是一样的,不过需要获取当前的月份的天数(某月的天数获取:Calendar cal = Calendar.getInstance(); cal.setTime(month); int maxDay = cal.getMaximum(Calendar.DATE);),然后再对数据进行循环遍历,最后进行组装。差不多就是这些了,有不足之处欢迎指教。
转载请标明出处,谢谢!!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: ASP.NET是一种用于构建Web应用程序的开发框架,而Echarts是一个基于HTML5 Canvas的数据可视化图表库。二者结合使用可以实现在ASP.NET网站中展示丰富的数据图表。 在ASP.NET中使用Echarts可以按照以下步骤进行: 1. 引入Echarts的相关资源文件。将EchartsJavaScript文件和样式表文件引入到ASP.NET网页中。 2. 在ASP.NET网页中定义一个容器元素,用于展示Echarts图表。可以使用HTML的<div>标签或者ASP.NET的控件进行定义。 3. 在后台代码中获取数据并进行整理。根据项目需要,可以从数据库、API接口或其他数据源中获取数据,并对数据进行处理和整理,以便能够被Echarts接受和展示。 4. 在后台代码中生成Echarts配置选项。根据数据的特点和需求,通过后台代码生成Echarts所需的配置选项。这些选项包括图表类型、数据系列、坐标轴设置、图例设置、样式设置等。 5. 在前端代码中使用Echarts初始化图表。将生成的Echarts配置选项以JSON格式传递给前端JavaScript代码,并使用Echarts提供的API在容器元素中初始化图表。 6. 可选的交互和动态更新。通过Echarts提供的API,可以实现一些交互功能,比如图表的缩放、拖拽等。同时,根据项目需求,可以通过前端和后台的数据交互,实现图表的动态更新。 通过以上步骤,就可以在ASP.NET网站中使用Echarts实现数据图表的展示。这样的组合可以提供丰富的可视化效果,并帮助用户更直观地理解和分析数据。 ### 回答2: ASP.NET ECharts是一种基于ASP.NET框架的数据可视化工具,它主要用于在网页中展示各种图表类型,如折线图、柱状图、饼图等。ASP.NET是一种用于构建Web应用程序的开发框架,而ECharts是一款开源的JavaScript图表库,通过将两者结合使用,我们可以方便地在ASP.NET网页中实现图表的展示和数据的可视化。 使用ASP.NET ECharts可以简化图表的创建过程,开发者只需要编写少量的代码,就可以生成漂亮而且交互性强的图表。ASP.NET ECharts的优点之一是它支持多种图表类型和丰富的图表样式,开发者可以根据需求选择合适的图表类型来展示数据。此外,ASP.NET ECharts还支持动态更新数据和自定义样式,可以根据用户交互实时更新图表数据,以及设置图表的颜色、字体等样式。 ASP.NET ECharts的使用步骤通常包括以下几个方面:首先,需要在ASP.NET项目中引入ECharts的引用文件,以确保能够正确使用ECharts的功能。然后,开发者可以在网页中创建一个容器,用于放置图表。接下来,通过编写相关的代码,如数据处理和图表配置,可以生成具体的图表。最后,将生成的图表绘制到容器中,并可以添加交互事件,实现对图表的操作。 通过使用ASP.NET ECharts,开发者可以在ASP.NET项目中快速、简便地实现数据可视化,提升用户体验和数据展示效果。无论是企业统计报表、数据分析,还是个人博客或网页展示,ASP.NET ECharts都是一个强大且灵活的选择。 ### 回答3: ASP.NET是一种用于构建Web应用程序和网站的开发框架,而ECharts是一个功能丰富的JavaScript图表库。ASP.NET ECharts是将这两个技术结合起来使用的方式。 在ASP.NET中使用ECharts可以实现数据可视化,使数据以直观的图表形式展示给用户。通过使用ECharts的各种图表类型,如折线图、柱状图、饼图等,可以将数据进行可视化呈现,帮助用户更清晰、更直观地理解数据。此外,ECharts还支持数据的动态更新和交互式操作,用户可以根据需要查看特定时间段的数据,与图表进行交互,提供更好的用户体验。 ASP.NET ECharts的优势包括易于使用和上手,因为ECharts提供了丰富的文档和示例,使开发人员能够快速了解和使用该图表库。同时,由于ECharts基于JavaScript,可以在多种浏览器和设备上运行,为用户提供跨平台的支持。 ASP.NET ECharts的应用场景包括但不限于数据可视化报表、统计图表、实时监测系统等。例如,在电商网站中,可以使用ECharts展示销售数据的柱状图或折线图,供管理员了解销售情况并做出决策。在金融行业,可以通过ECharts实现股票行情的实时监测和展示。 总之,ASP.NET和ECharts的结合为开发人员提供了一种可视化数据的强大工具,可以使Web应用程序更具交互性和用户友好性,更好地满足用户的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值