前端charts常用小结

图表插件

  • jquery插件使用举例:
            $("#shieldui-chart1").shieldChart({
            theme: "dark",
            primaryHeader: {
                text: "Overall Throughput"
            },
            exportOptions: {
                image: false,
                print: false
            },
            dataSeries: [{
                seriesType: "area",
                collectionAlias: "tuple / second",
                data: performance
            }]
        });

json数组

var traffic = [ {
                    Source: "dataChunkDir", Amount: 323
                },
                {
                    Source: "metadataDir", Amount: 345
                },
                {
                    Source: "Social", Amount: 567
                },
                {
                    Source: "Search", Amount: 234
                },
                {
                    Source: "Internal", Amount: 111
                }];//定义数组
        var j = {Source: "dataChunkDir", Amount: 323};
        traffic.push(j);//添加对象元素`

JS遍历json对象

var nowStr = {"name":"Rolf", "password":"123"};
    for(var k in nowStr){
    var key = k;//key
    var value = nowStr[k];//value
}

或者

for(var i = 0; i < nowStr.length; i++){ alert(nowStr[i].name + " " +nowStr[i].password);
}

通过JS动态添加table的tr,td

var table = document.getElementById("datatable");
var newRow = table.insertRow(); //创建新行
var newCell1 = newRow.insertCell(0); //创建新单元格
newCell1.innerHTML = "<td>Rolf</td>" ; //单元格内的内容
newCell1.setAttribute("align","center"); //设置位置

var newCell1 = newRow.insertCell(1); //创建新单元格
newCell1.innerHTML =  "<td>123</td>" ; //单元格内的内容
newCell1.setAttribute("align","center"); //设置位置

Ajax获取后台数据

JS端
方法一:

$.ajax({
            type: 'GET',
            url:  "<%=path%>/clientTest",
            data: null ,
            dataType: "json",
            success:function(data) {
//                alert("success");
                var nowStr = data;
            },
            error : function() {
                // view("异常!");
                alert("failed!");
            }
  });

其中,1、
data:{ username:$("#username").val(), content:$("#content").val() }, 这个data是客户端传到服务器端的数据。
2、success:function(data) 这个data是服务器端返回客户端的数据
方法二:

//1. 创建ajax对象
                    var ajax;// createAjax();
                    if (window.XMLHttpRequest)
                    {
                        //  IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
                        ajax=new XMLHttpRequest();
                    }
                    else
                    {
                        // IE6, IE5 浏览器执行代码
                        ajax=new ActiveXObject("Microsoft.XMLHTTP");
                    }
                    //alert(ajax!=null?"创建ajax成功!":"创建ajax失败!!");
//2.定义调用函数
function chart() {
                        //3. 准备发送请求
                        /*
                         method表示发送请求的方式,例如GET或POST
                         url表示发送请求的目标地址
                         可选的boolean值
                         >>true:表示该请求是异步的,这是默认值,web2.0
                         >>false:表示该请求是同步的,web1.0
                         */
                        var method = "GET";
                        <%String path = request.getContextPath();%>//获取当前路径
                        var url = "<%=path%>/clientTest";//交互的类
                        ajax.open(method, url, true);
                        //4. 真正发送异步请求
                        /*
                         content表示发送请求的内容,如果无内容的话,使用null表示
                         如果有内容,写成key=value形成,例如:username=jack&password=123
                         */
                        var content = "111";
                        ajax.send(content);
                        //5. ajax对象监听服务器的响应
                        ajax.onreadystatechange = function() {
                            //如果ajax对象,已经完全接收到了响应,

                            if (ajax.readyState == 4) {
                                //如果响应正确
                                
                                    if (ajax.status == 200) {

                                    var nowStr = JSON.parse(ajax.responseText);//转化为json对象

                                    alert(json.name);//输出对象的name属性

                                    或者
                                    //定位span标签

                                    var spanElement = document.getElementsByTagName("span")[0];

                                    //将nowStr放当span标签内

                                   spanElement.innerHTML = nowStr;
                                }
                            }
                        };
                    };

后台
3.发送ajax对象
SystemState systemState = new SystemState();//新建空对象
操作对象

        String jsonStr = json.toString();//转化为json字符串
        System.out.println(json.toString());
        response.getWriter().write(jsonStr);//获取输出流对象
//通过流对象,将信息输出到AJAX对象

js中Double类型数据保留两位小数(非四舍五入)

var a = 3.346234325;
var b = parseFloat(a).toFixed(3);
var result = b.substring(0,b.toString().length - 1);  //这里先将a转换为float类型再保留三位小数,最后截取字符串前b.length - 1位
document.write(result);

Echarts图表使用

smooth:false/true; //折线是否平滑
parallelAxis.type: 坐标轴类型。
可选:
'value' 数值轴,适用于连续数据。
'category' 类目轴,适用于离散的类目数据,为该类型时必须通过 data 设置类目数据。
'time' 时间轴,适用于连续的时序数据,与数值轴相比时间轴带有时间的格式化,在刻度计算上也有所不同,例如会根据跨度的范围来决定使用月,星期,日还是小时范围的刻度。
'log' 对数轴。适用于对数数据。
parallelAxis.name: 坐标轴名称。
parallelAxis.nameLocation: 坐标轴名称显示位置。
可选:
'start'
'middle'
'end'
parallelAxis.nameTextStyle: 坐标轴名称的文字样式。
parallelAxis.nameGap: 坐标轴名称与轴线之间的距离。
xAxis.axisLabel.interval:坐标轴刻度标签的显示间隔,在类目轴中有效。
默认会采用标签不重叠的策略间隔显示标签。
可以设置成 0 强制显示所有标签。
如果设置为 1,表示『隔一个标签显示一个标签』,如果值为 2,表示隔两个标签显示一个标签,以此类推。
xAxis.axisLabel.showMinLabel:是否显示最小 tick 的 label。可取值 true, false, null。默认自动判定(即如果标签重叠,不会显示最小 tick 的 label)。
修改坐标轴颜色:

axisLine:{
                lineStyle:{
                color:'yellow',
                width:8,//这里是为了突出显示加上的,可以去掉
                }
            }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容