zoukankan      html  css  js  c++  java
  • 顶会热词统计

    这个是统计结果

    根据论文摘要中的词频统计的,词频越高,在图中显示的文字越大

    通过点击图中的每一项,可以查询出相关论文的链接

     

     要点一:词云的使用

      引入相关的js文件

    <script src="./js/echarts-wordcloud.js"></script>

        词云的绘制

    <script>
            var chart = echarts.init(document.getElementById('main'));
            var postURL = "/Diploma/getData";
            var mydata = new Array();
            $.ajaxSettings.async = false;
            $.post(postURL, {}, function(rs) {
                var dataList = JSON.parse(rs);
                for (var i = 0; i < dataList.length; i++) {
                    var d = {};
                    d['name'] = dataList[i].keyword;
                    d['value'] = dataList[i].value;
                    mydata.push(d);
                }
            });
            $.ajaxSettings.async = true;
            var option = {
                tooltip : {},
                series : [ {
                    type : 'wordCloud',
                    gridSize : 2,
                    sizeRange : [ 20, 50 ],
                    rotationRange : [ -90, 90 ],
                    shape : 'pentagon',
                    width : 800,
                    height : 600,
                    drawOutOfBound : false,
                    textStyle : {
                        normal : {
                            color : function() {
                                return 'rgb('
                                        + [ Math.round(Math.random() * 160),
                                                Math.round(Math.random() * 160),
                                                Math.round(Math.random() * 160) ]
                                                .join(',') + ')';
                            }
                        },
                        emphasis : {
                            shadowBlur : 10,
                            shadowColor : '#333'
                        }
                    },
                    data : mydata
                } ]
            };
            chart.setOption(option);
            chart.on('click', function(params) {
                var url = "getDiplomaLink?keyword=" + params.keyword;
                window.location.href = url;
            });
        </script>

    要点二:词频的统计

    for(Data data:dataList) {
                String name = data.getPapername();
                String[] keyword= name.split(" "); //提取每篇论文题目中出现的单词存入集合
                names = (String[]) ArrayUtils.addAll(keywords, names);
            }
            HashMap<String, Integer> name_value = new HashMap<>();
    
            for(String name:names) {
                name_value.put(name, !name_value.containsKey(name)?1:name_value.get(name)+1);  //利用集合的方法判断是否存在重复的值,重复的话在原来的基础上加1
            }
    
            for(String name:name_value.keySet()) {
                Word word = new Word();
            //一般情况下有效的关键词(length>4)存入一个集合中
    if(name!=null&&(name_value.get(name)>1)&&(name.length()>4)) { word.setName(name); word.setValue(name_value.get(name)); wordList.add(word); } }
  • 相关阅读:
    HDU 1010 Tempter of the Bone
    HDU 4421 Bit Magic(奇葩式解法)
    HDU 2614 Beat 深搜DFS
    HDU 1495 非常可乐 BFS 搜索
    Road to Cinema
    Sea Battle
    Interview with Oleg
    Spotlights
    Substring
    Dominating Patterns
  • 原文地址:https://www.cnblogs.com/ywqtro/p/12723330.html
Copyright © 2011-2022 走看看