• <noscript id="ggggg"><dd id="ggggg"></dd></noscript>
    <small id="ggggg"></small> <sup id="ggggg"></sup>
    <noscript id="ggggg"><dd id="ggggg"></dd></noscript>
    <tfoot id="ggggg"></tfoot>
  • <nav id="ggggg"><cite id="ggggg"></cite></nav>
    <nav id="ggggg"></nav>
    成人黃色A片免费看三更小说,精品人妻av区波多野结衣,亚洲第一极品精品无码,欧美综合区自拍亚洲综合,久久99青青精品免费观看,中文字幕在线中字日韩 ,亚洲国产精品18久久久久久,黄色在线免费观看

    Echarts 動態更新散點圖

    2019-6-17    seo達人

    如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里

     最近遇到一個作業,要求使用 Echarts 散點圖,本來這個圖是很容易的,官網上也有很多的教程。但是如果可以動態的更新 Echarts 散點圖就更好了。我本身對 js 不感興趣,經過不停的查找資料最終實現了這一功能。
    我的項目是 Servlet + jsp + Echarts。先從 Servlet 入手,我們的項目需要傳遞的數值是 x 坐標和 y 坐標。我首先寫了一個 JavaBean

    julie.java

    package JavaBean;

    public class julei {
        public julei(double x, double y) {
            this.x = x;
            this.y = y;
        }
        double x;

        public double getX() {
            return x;
        }

        public void setX(double x) {
            this.x = x;
        }

        public double getY() {
            return y;
        }

        public void setY(double y) {
            this.y = y;
        }

        double y;

        @Override
        public String toString() {
            return "[" + this.x + "," + this.y + "]";
        }
    }


    Servlet中的代碼,因為使用的是 json 來傳遞的數據,所以 json 相關的包還是少不了的。
    BackServlet

    package Servlet;

    import JavaBean.Readtxt;
    import JavaBean.julei;
    import org.json.JSONArray;
    import org.json.JSONObject;

    import java.io.IOException;
    import java.io.PrintWriter;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;

    @javax.servlet.annotation.WebServlet("/BackServlet")
    public class BackServlet extends javax.servlet.http.HttpServlet {
        protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {



            List<julei> list = new ArrayList<>();
            try {
                list = Readtxt.out();//這是我們項目中的一個類,不重要。
            }catch (Exception e)
            {
                System.out.println(e.toString());
            }


            JSONArray jsonArray = new JSONArray(list);
            System.out.println(jsonArray.toString());
            //最重要的就是這一句,將數據發送給誰來申請的位置
            response.getWriter().write(jsonArray.toString());


        }

        protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {

        }
    }


    好了,現在到了最重要的前端方面了。
    index.jsp
    正常聲明散點圖,只要把data聲明為空就好。

      var myChart = echarts.init(document.getElementById('man'));
              var option = {
                title : {
                  text: '死亡分布圖',
                },
                xAxis: {axisTick: {//決定是否顯示坐標刻度
                    alignWithLabel: true,
                    show:true
                  },},
                yAxis: {},
                series: [{
                  symbolSize: 20,
                  data: [],
                  type: 'scatter'
                }]
              };
              myChart.setOption(option);

    數據接收部分:

    var num = [];
              var gao = new Array();
              $.ajax({
                type : "post",
                async : true, //異步請求(同步請求將會鎖住瀏覽器,其他操作須等請求完成才可執行)
                url : "BackServlet", //請求發送到TestServlet
                data : {},
                dataType : "json", //返回數據形式為json

                //7.請求成功后接收數據name+num兩組數據
                success : function(result) {
                  //result為服務器返回的json對象
                  if (result) {
                    //8.取出數據存入數組

                    for (var i = 0; i < result.length; i++) {

                      gao.push([result[i].x,result[i].y]);//這一句很重要,它將數據轉化為了正確的格式。

                    }

                    myChart.hideLoading(); //隱藏加載動畫

                    //9.覆蓋操作-根據數據加載數據圖表
                    myChart.setOption({
                      series : [ {
                        // 根據名字對應到相應的數據
                        data : gao//在這里對data進行賦值。
                      } ]
                    });

                  }

                },
                error : function(errorMsg) {
                  //請求失敗時執行該函數
                  alert("圖表請求數據失敗!");
                  myChart.hideLoading();
                }
              })




    完畢

    我把整個jsp都放上來了,但是里面的 css 還有 js 就不放了,重點是傳數據的那一部分。

    <%@ page language="java" contentType="text/html; charset=UTF-8"
             pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html lang="zh-CN">
    <head>
      <meta charset="UTF-8">
      <title>LOL數據分析</title>
      <script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.min.js"></script>
      <script type="text/javascript" src='js/echarts.js'></script>
      <link rel="stylesheet" href="css/jquery.fullPage.css">
      <link rel="stylesheet" href="css/style.css">
      <link rel="icon" >
      <meta name="viewport" content="width=device-width, initial-scale=1">
      <script src="https://code.highcharts.com.cn/highcharts/highcharts.js"></script>
      <script src="https://code.highcharts.com.cn/highcharts/modules/exporting.js"></script>
      <script src="https://img.hcharts.cn/highcharts-plugins/highcharts-zh_CN.js"></script>
    </head>

    <body>
    <div class="bgcolor">
      <div style="z-index:100;" id="dowebok">
        <!--第一屏-->

        <div class="section">
          <div class="ly-box01">
            <img class="ly-img01" src="img/logol.png" style="width:100%;height:100%">

          </div>
        </div>

     

        <!--第三屏-->

        <div class="section">
          <div class="timeline"></div>
          <div class="timepoint21"></div>
          <div class="ly-box11">
            <div id="man" style=" width: 600px;height: 500px;"></div>

            <script type="text/javascript">
              // 基于準備好的dom,初始化echarts實例
              var value=[];
              $.ajaxSettings.async=false;
              var myChart = echarts.init(document.getElementById('man'));
              var option = {
                title : {
                  text: '死亡分布圖',
                },
                xAxis: {axisTick: {//決定是否顯示坐標刻度
                    alignWithLabel: true,
                    show:true
                  },},
                yAxis: {},
                series: [{
                  symbolSize: 20,
                  data: [],
                  type: 'scatter'
                }]
              };
              myChart.setOption(option);






              var num = [];
              var gao = new Array(4);
              $.ajax({
                type : "post",
                async : true, //異步請求(同步請求將會鎖住瀏覽器,其他操作須等請求完成才可執行)
                url : "BackServlet", //請求發送到TestServlet
                data : {},
                dataType : "json", //返回數據形式為json

                //7.請求成功后接收數據name+num兩組數據
                success : function(result) {
                  //result為服務器返回的json對象
                  if (result) {
                    //8.取出數據存入數組

                    for (var i = 0; i < result.length; i++) {
                      gao.push([result[i].x,result[i].y]);
                    }

                //  document.write(gao);
                    myChart.hideLoading(); //隱藏加載動畫

                    //9.覆蓋操作-根據數據加載數據圖表
                    myChart.setOption({
                      series : [ {
                        // 根據名字對應到相應的數據
                        data : gao
                      } ]
                    });

                  }

                },
                error : function(errorMsg) {
                  //請求失敗時執行該函數
                  alert("圖表請求數據失敗!");
                  myChart.hideLoading();
                }
              })






            </script>
          </div>
          <div class="ly-triangle21"></div>
        </div>
      <!--試驗-->

      <ul class="bg-bubbles">
        <li><img src="img/logol.png" style="width:100%;height:100%"></li>
        <li><img src="img/logol.png" style="width:100%;height:100%"></li>
        <li><img src="img/logol.png" style="width:100%;height:100%"></li>
        <li><img src="img/logol.png" style="width:100%;height:100%"></li>
        <li><img src="img/logol.png" style="width:100%;height:100%"></li>
        <li><img src="img/logol.png" style="width:100%;height:100%"></li>
        <li><img src="img/logol.png" style="width:100%;height:100%"></li>
        <li><img src="img/logol.png" style="width:100%;height:100%"></li>
        <li><img src="img/logol.png" style="width:100%;height:100%"></li>
        <li><img src="img/logol.png" style="width:100%;height:100%"></li>
      </ul>

    </div>

    <audio src="music/1.mp3" autoplay="autoplay" loop="loop" />
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.fullPage.min.js"></script>
    <script src="js/diy.js"></script>
    </body>
    </html>
    藍藍設計www.lzhte.cn )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務。

    日歷

    鏈接

    個人資料

    藍藍設計的小編 http://www.lzhte.cn

    存檔

    主站蜘蛛池模板: 在线观看国产久青草| 亚洲欧洲AV系列天堂日产国码| 99在线精品视频在线观看| 绩溪县| 无码专区亚洲avl| 亚洲一区无码中文字幕乱码| 福利一区二区三区视频在线| 无遮挡边摸边吃奶边做视频| 日韩免费无码专区精品观看| 新河县| 国产成人亚洲精品狼色在线| 女人张开腿让男人桶个爽| 成人一区二区三区| 国产精品久久精品三级| 亚洲综合国产一区二区三区| 色男人的天堂久久综合| 国产成年无码久久久免费| 亚洲熟妇AV一区二区三区宅男| 性高湖久久久久久久久AAAAA| 99久久国语露脸国产精品| 婷婷亚洲久悠悠色悠在线播放| 亚洲国产精品日韩欧美一区| 精品国产成人三级在线观看| 欧美一级高清片在线观看| 人妻无码一区二区19P| 白浆导航| 亚洲欧洲日韩国内高清| 永久免费AV无码网站04| 国产午夜草莓视频在线观看| 人人澡人人澡人人看添av| 无码av免费不卡在线观看 | 亚洲av日韩av一区久久| 艳妇乳肉豪妇荡乳AV无码福利| 丰满人妻熟妇乱又伦精品软件| 在线精品亚洲一区二区小说| 成人区精品一区二区不卡| 一本色道久久综合av| 小说 亚洲 无码 精品| 日本少妇爽的大叫高潮了| 在线免费不卡av网站一区| 免费特黄一区二区三区视频一|