欧美videos另类精品-欧美videos另类极品-欧美vide-欧美va在线视频-欧美va在线观看-欧美va在线播放免费观看

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.73404.com.cn )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務

日歷

鏈接

個人資料

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

存檔

主站蜘蛛池模板: 国产a高清| 成人国产第一区在线观看 | 小小水蜜桃视频高清在线播放 | 亚洲天天综合网 | 久久永久视频 | 国产在线精品成人一区二区三区 | 国产永久一区二区三区 | 欧美夜夜精品一级爽 | 欧美日韩一区二区三区在线视频 | 黑人女性猛交xxxxxⅹxx | 午夜特级毛片 | 国产成人亚洲影视在线 | www久久| 精油按摩日本 | 国产精品国产国产aⅴ | 国产女乱淫真高清免费视频 | 国产一成人精品福利网站 | 99re热这里只有精品视频 | 免费看成年视频网页 | 摄像头东北对白清晰 | 国产亚洲毛片在线 | 亚洲社区在线观看 | 四虎免费影院4hu永久免费 | 性bbwbbwbbwbbw撒尿 | 日本女人www | 天天天天天干 | 欧美日韩视频在线一区二区 | 日韩免费视频播播 | 欧美一二区 | 成人欧美1314www色视频 | 男女操bb| 99草 | 亚洲精品福利一区二区在线观看 | 国产精品视频二区不卡 | 欧美日韩精品在线观看 | 91精品综合国产在线观看 | 高肉h护士办公室play | 美女扒开奶罩让男人吃奶 | 精品亚洲视频在线观看 | 国产成人免费在线观看 | 成人在线免费播放 |