欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue中使用heatmapjs的示例代碼(結(jié)合百度地圖)

 更新時間:2018年09月05日 14:00:36   作者:李大雷  
這篇文章主要介紹了vue中使用heatmapjs的示例代碼(結(jié)合百度地圖),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

業(yè)務需求:將heatmap引入頁面中,做成一個可引入的框架,使用于所有頁面。代碼如下。

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title></title>
  <style>
    .heatmap {
      width:1900px; height:1900px;
    }
  </style>
  <script src="js/heatmap.min.js"></script>
  <script src="js/jquery.js"></script>
</head>
<body>
<input id=xxx type=hidden value="">
 
<input id=yyy type=hidden value="">
<input id="array" type="button" value="點擊查看數(shù)組內(nèi)容" onclick="getindex()"/>
<div class="demo-wrapper">
  <div class="heatmap" style="position: relative;">
    <div><img src="image/1.jpg" ></div>
   </div>
</div>
</body>
 
<script src="js/heatmap.min.js"></script>
<script>
  <!--heapmap熱力圖-->
  var heatmapInstance = h337.create({
    container: document.querySelector('.heatmap'),
    radius: 50
  });
  document.querySelector('.demo-wrapper').onmousemove = function(ev) {
    heatmapInstance.addData({
      x: ev.layerX,
      y: ev.layerY,
      value: 1
    });
  };
 
  <!--鼠標點擊-->
  var pointx = new Array();
  var pointy = new Array();
  var i = 0;//數(shù)組下標
  function mouseMove(ev) {
    Ev = ev || window.event;
    var mousePos = mouseCoords(ev);
    document.getElementById("xxx").value = mousePos.x;
    pointx[i] = document.getElementById("xxx").value ;//x坐標值寫入數(shù)組
    console.log("x:"+document.getElementById("xxx").value);
    document.getElementById("yyy").value = mousePos.y;
    pointy[i] = document.getElementById("yyy").value;//y坐標值寫入數(shù)組
    console.log("y:"+document.getElementById("yyy").value);
    //  執(zhí)行完之后數(shù)組下標加一
    i++;
    console.log(i);//打印下標
  }
  function mouseCoords(ev) {
    if (ev.pageX || ev.pageY) {
      return {x: ev.pageX, y: ev.pageY};
    }
    return {
      x: ev.clientX + document.body.scrollLeft - document.body.clientLeft,
      y: ev.clientY + document.body.scrollTop - document.body.clientTop
    };
  }
  document.onmousemove = mouseMove;
 
  $(function(){
    var s ="";
    s += window.screen.height+"*"+window.screen.width;
    console.log("當前屏幕分辨率是:"+s);
    <!--動態(tài)改變div寬高-->
    $(".heatmap").width($("body").width());
    $(".heatmap").height($("body").height());
  });
</script>
</html>

需要引入的js在https://github.com/pa7/heatmap.js  獲取。

vue中使用heatmapjs

百度地圖怎么使用就不說了,主要講講這個heatmap,直接貼代碼了,注釋挺詳細的

 //vue組件中
data(){
  return{
    heatmapOverlay:""
  }
},
mounted() {
  //引用heatmap.js
  //你也可以在index.html中直接插個 <script type="text/javascript" src="http://api.map.baidu.com/library/Heatmap/2.0/src/Heatmap_min.js"></script>

  let script = document.createElement("script");
  script.type = "text/javascript";
  script.src =
   "http://api.map.baidu.com/library/Heatmap/2.0/src/Heatmap_min.js";
  document.body.appendChild(script);  
  
  //創(chuàng)建地圖,這個寫自己的創(chuàng)建地圖方法,請確認你的地圖能加載出來
  this.creatMap();
  
  //一定要先讓地圖加載出來才加載熱力圖,我這里做演示直接寫個setTimeout了
  setTimeout(()=>{this.getHeatmap()},2000)
 },
methods:{
  getHeatmap() {
    //請求雷達數(shù)據(jù),雷達數(shù)據(jù)需要lng,lat,count 三種數(shù)據(jù)
   this.$http
    .get("../../../static/radar20.json")
    .then(res => {
     if (res.data.code == "success") {
      console.log("獲取radar成功");
      var bigdata = res.data.data;
       
       //關鍵是下面的三行
       //其中map是new BMap.Map()創(chuàng)建的地圖實例,其他的熱力圖屬性(radius,opacity這種)可以在百度地圖接口實例中調(diào)試體驗,http://lbsyun.baidu.com/jsdemo.htm#c1_15
      this.heatmapOverlay = new BMapLib.HeatmapOverlay({ radius: 40,opacity:0.4});
      map.addOverlay(this.heatmapOverlay);
      this.heatmapOverlay.setDataSet({ data: bigdata, max: 20 });
       
     } else {
      console.log("err");
     }
    })
    .catch(err => {
     console.log(err);
    });
  },
}

效果圖:


以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • webpack+vue.js快速入門教程

    webpack+vue.js快速入門教程

    隨著前端的快速發(fā)展,非常多的js框架被應用到項目中。Vue.js本身支持對組件的異步加載,配合Webpack的分塊打包功能,可以極其輕松地實現(xiàn)組件的異步按需加載。 這篇文章是webpack+vue.j的入門教程,有需要的可以參考借鑒。
    2016-10-10
  • vue項目做屏幕自適應處理方式

    vue項目做屏幕自適應處理方式

    這篇文章主要介紹了vue項目做屏幕自適應處理方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • Vue?props傳入function時的this指向問題解讀

    Vue?props傳入function時的this指向問題解讀

    這篇文章主要介紹了Vue?props傳入function時的this指向問題解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • vue3.0引入百度地圖并標記點的實現(xiàn)代碼

    vue3.0引入百度地圖并標記點的實現(xiàn)代碼

    這篇文章主要介紹了vue3.0引入百度地圖并標記點,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-08-08
  • Vuex實現(xiàn)計數(shù)器以及列表展示效果

    Vuex實現(xiàn)計數(shù)器以及列表展示效果

    這篇文章主要為大家詳細介紹了Vuex實現(xiàn)計數(shù)器以及列表展示效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • vue-vuex中使用commit提交mutation來修改state的方法詳解

    vue-vuex中使用commit提交mutation來修改state的方法詳解

    今天小編就為大家分享一篇vue-vuex中使用commit提交mutation來修改state的方法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • vue中配置后端接口服務信息詳解

    vue中配置后端接口服務信息詳解

    這篇文章主要介紹了vue中配置后端接口服務信息詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Iview Table組件中各種組件擴展的使用

    Iview Table組件中各種組件擴展的使用

    這篇文章主要介紹了Iview Table組件中各種組件擴展的使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-10-10
  • vue打包后出現(xiàn)空白頁的原因及解決方式詳解

    vue打包后出現(xiàn)空白頁的原因及解決方式詳解

    在項目中很多時候需要用到vue打包成html不需要放在服務器上就能瀏覽,根據(jù)官網(wǎng)打包出來的html直接打開是顯示空白,下面這篇文章主要給大家介紹了關于vue打包后出現(xiàn)空白頁的原因及解決方式的相關資料,需要的朋友可以參考下
    2022-07-07
  • vue前端實現(xiàn)導出頁面為pdf(分頁導出、不分頁導出及分模塊導出)

    vue前端實現(xiàn)導出頁面為pdf(分頁導出、不分頁導出及分模塊導出)

    在實際應用中可能用戶希望將系統(tǒng)中一個頁面展示的所有數(shù)據(jù)報表,用PDF的文件格式下載下來,以便于其他用途,這篇文章主要給大家介紹了關于vue前端實現(xiàn)導出頁面為pdf(分頁導出、不分頁導出及分模塊導出)的相關資料,需要的朋友可以參考下
    2024-06-06

最新評論