• <abbr id="chdyf"></abbr>
    <ruby id="chdyf"><acronym id="chdyf"><meter id="chdyf"></meter></acronym></ruby>
    <bdo id="chdyf"></bdo>
    <dfn id="chdyf"><menu id="chdyf"></menu></dfn>
    1. <menuitem id="chdyf"></menuitem><strong id="chdyf"><menu id="chdyf"></menu></strong>

      <rt id="chdyf"><menu id="chdyf"></menu></rt>
      成人小说一区二区三区,伊人精品成人久久综合全集观看,久久HEZYO色综合,中文字幕精品人妻熟女,影音先锋成人网站,我要看免费一级毛片,中国女人做爰A片,中文字幕av久久爽Av

      Echarts 動(dòng)態(tài)更新散點(diǎn)圖

      2019-6-17    seo達(dá)人

      如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里

       最近遇到一個(gè)作業(yè),要求使用 Echarts 散點(diǎn)圖,本來(lái)這個(gè)圖是很容易的,官網(wǎng)上也有很多的教程。但是如果可以動(dòng)態(tài)的更新 Echarts 散點(diǎn)圖就更好了。我本身對(duì) js 不感興趣,經(jīng)過(guò)不停的查找資料最終實(shí)現(xiàn)了這一功能。
      我的項(xiàng)目是 Servlet + jsp + Echarts。先從 Servlet 入手,我們的項(xiàng)目需要傳遞的數(shù)值是 x 坐標(biāo)和 y 坐標(biāo)。我首先寫(xiě)了一個(gè) 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中的代碼,因?yàn)槭褂玫氖?json 來(lái)傳遞的數(shù)據(jù),所以 json 相關(guān)的包還是少不了的。
      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();//這是我們項(xiàng)目中的一個(gè)類(lèi),不重要。
              }catch (Exception e)
              {
                  System.out.println(e.toString());
              }


              JSONArray jsonArray = new JSONArray(list);
              System.out.println(jsonArray.toString());
              //最重要的就是這一句,將數(shù)據(jù)發(fā)送給誰(shuí)來(lái)申請(qǐng)的位置
              response.getWriter().write(jsonArray.toString());


          }

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

          }
      }


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

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

      數(shù)據(jù)接收部分:

      var num = [];
                var gao = new Array();
                $.ajax({
                  type : "post",
                  async : true, //異步請(qǐng)求(同步請(qǐng)求將會(huì)鎖住瀏覽器,其他操作須等請(qǐng)求完成才可執(zhí)行)
                  url : "BackServlet", //請(qǐng)求發(fā)送到TestServlet
                  data : {},
                  dataType : "json", //返回?cái)?shù)據(jù)形式為json

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

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

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

                      }

                      myChart.hideLoading(); //隱藏加載動(dòng)畫(huà)

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

                    }

                  },
                  error : function(errorMsg) {
                    //請(qǐng)求失敗時(shí)執(zhí)行該函數(shù)
                    alert("圖表請(qǐng)求數(shù)據(jù)失敗!");
                    myChart.hideLoading();
                  }
                })




      完畢

      我把整個(gè)jsp都放上來(lái)了,但是里面的 css 還有 js 就不放了,重點(diǎn)是傳數(shù)據(jù)的那一部分。

      <%@ 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數(shù)據(jù)分析</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">
                // 基于準(zhǔn)備好的dom,初始化echarts實(shí)例
                var value=[];
                $.ajaxSettings.async=false;
                var myChart = echarts.init(document.getElementById('man'));
                var option = {
                  title : {
                    text: '死亡分布圖',
                  },
                  xAxis: {axisTick: {//決定是否顯示坐標(biāo)刻度
                      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, //異步請(qǐng)求(同步請(qǐng)求將會(huì)鎖住瀏覽器,其他操作須等請(qǐng)求完成才可執(zhí)行)
                  url : "BackServlet", //請(qǐng)求發(fā)送到TestServlet
                  data : {},
                  dataType : "json", //返回?cái)?shù)據(jù)形式為json

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

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

                  //  document.write(gao);
                      myChart.hideLoading(); //隱藏加載動(dòng)畫(huà)

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

                    }

                  },
                  error : function(errorMsg) {
                    //請(qǐng)求失敗時(shí)執(zhí)行該函數(shù)
                    alert("圖表請(qǐng)求數(shù)據(jù)失敗!");
                    myChart.hideLoading();
                  }
                })






              </script>
            </div>
            <div class="ly-triangle21"></div>
          </div>
        <!--試驗(yàn)-->

        <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>
      藍(lán)藍(lán)設(shè)計(jì)www.wtxcl.cn )是一家專(zhuān)注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶(hù)體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 平面設(shè)計(jì)服務(wù)

      日歷

      鏈接

      個(gè)人資料

      存檔

      主站蜘蛛池模板: 无码少妇一区二区三区浪潮AV| 成人影院免费观看在线播放视频| 亚洲中又文字幕精品av| 国产激情内射在线影院| igao国产精品| 欧美丝袜另类| 亚洲精品成人午夜在线| 狠狠干2025| 精品人妻一区二区三区在线视频不卡| 亚洲性爱电影| 久久精品6| 91亚洲人成手机在线观看| 开原市| 久久做受www| 一区二区中文| 亚洲精品午夜不卡| 蜜臀AV色欲AV无码一区| 免费av网站| 人妻口爆| 熟女中文字幕丝袜日韩| 妺妺窝人体色WWW在线一| 亚洲日本VA午夜在线影院| 欧美精品福利| 国产XXXX| 日本亚洲国产| www色色色com| 日韩a一级欧美一级| 52熟女露脸国语对白视频| 精品国产口暴| av在线一区二区三区四区| 亚洲午夜av| 中文字幕av一区| jizzjizzjizzjizz| 在线熟女| 国产九九免费视频| 久久AV高潮AV| 久久亚洲精彩无码天堂| 日本免费一区二区三区中文字幕| 色欲国产精品一区成人精品 | 芜湖县| 69avav?cn|