Java----Eachars报表统计通用插件

前言:经过几次对eachars的理解和应用,再次将eachars进行了封装和升级,本版本目前是封装相对之前来说是比较完善的一个js, 内部包含两个JS,myEacharsPage.js 和 echarts.js,myEacharsPage是本人自己进行封装的JS,目前是针对饼图(pie),折线图(line),柱状图(bar)等进行了再次封装,使用时候,请仔细看方法的参数说明

链接:https://pan.baidu.com/s/1GxHSytiQ_7YHP9u3AOVBlg 
提取码:44w0 

1,先将两个js文件放置项目工程目录下,然后在myEacharsPage.js里面的顶部引用 echarts.js路径,

然后 在需要的界面引用myEacharsPage.js即可

2,在界面先给定一个容器用来展示图形报表,一般使用div

<div style="width:73.4%;height: 600px; border: 1px solid #ddd;float: right;" id="container">
</div>

3,加载数据库也就是你需要展示的数据,封装成JSON数组,取名随意  dataJSON

4,然后调用方法将dataJson数组封装成报表需要的格式,当然也可以在上面一次性封装成报表需要的json格式,这个可以根据实际情况来

            //再次封装数据为图形需要的格式   封装X轴,和Y轴
            var timeJSON = [];   //X轴 时间
            var valueJSON = [];   //Y轴 数据

            //图形化的图例图标显示数据
            var legData = ['总金额','总净值','临近报废数量','临近报废金额','采购数量'];
            
            //Y轴的描述,可以根据实际情况来,这里是采用双坐标的概念 取坐标的时候是根据下标来取对        
            应的描述的,0是数量,1是金额
            var yAxis = [{
                name: '数量',
                type: 'value'
            },{
                name: '金额',
                type: 'value'
            }];

            //封装X轴值
            for(var i=0;i<dataJSON.length;i++){
                    timeJSON.push(dataJSON[i].xAxis); //对应X轴值
            }

                //封装Y轴值
                var index = 0;
                for(var i = 0;i < dataJSON[0].yAxis.length; i++){   //得到项目大小
                    //左边的数据
                    var scz = {};
                    scz.name = dataJSON[0].yAxis[index].name;

                    //指定那个Y轴
                    if(dataJSON[0].yAxis[index].name == '临近报废数量' || dataJSON[0].yAxis[index].name == '采购数量'){
                        scz.yAxisIndex = 0;
                    }else{
                        scz.yAxisIndex = 1;
                    }

                    //封装Y轴值
                    var da = [];
                    for(var j = 0; j < timeJSON.length; j++){  //2
                        da.push(Number(dataJSON[j].yAxis[index].value));  //value
                    }
                    scz.data = da;
                    valueJSON.push(scz); //对应y轴值
                    index++;//当前索引加 1
                }

           

5,将第四部封装好的X轴json 和Y轴Json,调用myEacharsPage.js里面的方法即可,对应的参数说明在下图,getBarOrLineCharts('container',timeJSON,valueJSON,'【单位资产】分析',legData, yAxis, 'bar', 'shadow',true);

6,效果图为:

如果是想换成折线图,请修改第五步里面的参数即可

如果是饼图:则调用myEacharsPage.js中的
getPieCharts方法即可,参数说明,请将鼠标放置方法上,就可以看到,也可以按ctrl,点击方法名跳转进去看到参数说明

饼图效果

 

最后注意几个细节:
当图形生成后,放置到容器中,若容器发生大小变化时候,则可以调用报表的resize()方法进行报表重置

若想使用自定义颜色的话,myEacharsPage.js最后,本人已经附上了十六进制的颜色代码,使用时候只管调用方法即可

如有问题,请联系QQ:1693940631

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
代码统计插件 eclipse plugin java 提供xls导出。 liugang594 开发的,方便下载 这是一款小型的代码统计软件。它具有以下功能: 1、良好的统计性能。可以统计各种方式的注释,如单行、多行注释;注释在行前 、行尾、单独成行等。 2、可以进行多种语言注释统计。默认情况下已经可以统计.java、.C、.h、.CPP 、.C++和.AS 类型文件的统计了。还可以统计.properties文件 3、可以进行统计类型的自定义。点击统计类型配置按钮,在弹出的对话框左边是剩余可 配置的文件类型,右边是当前设置的统计类型,可以通过加入或移除按钮进行增删。 4、方便的打开文件。你可以在树或表上双击文件各直接打开文件或目录。双击文件时会 三种打开方式:本程序、系统、eclipse。如果是eclipse工程里的文件,则默认 是使用eclipse打开,否则使用本程序打开 5、可以进行多个目录的统计。每个统计的目录都会作为树结点加到树上去。当选择统计 的目录已经统计,则更新该目录。选择一个统计的目录,点del键时可删除这个统计 结点 6、单击统计结果表格的表头时,会按正反序进行排序,文件名按字母顺序排序;其他统计 数字按数字大小进行排序! 关于扩展的使用方法: 扩展就是通过继承basecount包里的BaseCount类,实现它的countTypeFile方法来达到 扩展的目的。你只要把传入的参数里的文件内容读取出来,然后按照你自定义的判断 注释、内容、总数、包声明、导入数、空白行数然后一个一个的设入到传入的result参 数里就可以了(没有的可以不设)。具体的可以参照简单的下面给出的一个例子。 再有一点要注意的就是,你要把你的统计类型文件的后缀添加到configuration.ini文 件里去,如里这个文件里没有声明统计这个类型;另外你还要在config.ini文件里把文 件后缀--统计类 对写好。这样才能正确显示结果 例如:统计.properties文件 首先写一个统计类,假设这个类名为CountProperties,这个类在包count下。我们定 义.properties文件的注释是只有当行首的字符为“#”时认为是一个注释,否则如果行空 则认为是一个空行,其他的则认为是一个代码行。则代码如下: package count; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import basecount.BaseCount; import result.CountResult; public class CountPropertiesFile extends BaseCount { /** * implements this method to custom */ public void countTypeFile(File sourcefile, CountResult result) { countPropertiesFile(sourcefile, result); } /** * this method used to count properties file * the comment signal is "#" * @param sourcefile * @param result */ private void countPropertiesFile(File sourcefile, CountResult result) { BufferedReader reader = null; try { reader = new BufferedReader(new FileReader(sourcefile)); String line = null; String trimed = null; while ((line = reader.readLine()) != null) { int i = result.getTotlalLineCount(); result.setTotlalLineCount(++i); trimed = line.trim(); if (trimed.length() < 1) { i = result.getBlankLineCount(); result.setBlankLineCount(++i); } else if (trimed.startsWith("#")) { i = result.getCommentLineCount(); result.setCommentLineCount(++i); } else { i = result.getCodeLineCount(); result.setCodeLineCount(++i); } } } catch (Exception ex) { ex.printStackTrace(); } finally { try { if(reader!=null) reader.close(); } catch (Exception ex) { ex.printStackTrace(); } } } } 写完这个代码以后,在config.ini文件里增加一行,内容如下: .properties=count.CountPropertiesFile 如果configuration.ini里的可统计类型不包括.properties文件,则增加以下内容 SourceFilter.countFileExtensions=.../.properties 这就完成了增加自定义的统计.properties类型文件的目的了!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

枯枫叶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值