前端项目加载离线的百度地图,利用工具进行切指定区域的地图影像,自定义图层getTilesUrl

news2024/11/20 9:42:32

百度地图在开发中我们经常使用,但是有些项目是需要在内网进行,这时候我们不得不考虑项目中一些功能需要请求外网静态资源,比如百度地图。只有把包下载到本地,才能让静态资源文件的正常的访问。

目录

获取百度地图开发秘钥

引入在线百度地图

加载离线地图

获取百度地图离线包

引入百度地图离线包

显示指定区域的地图影像

全能电子地图下载器

街道图

混合图

百度地图切图工具

完整代码


获取百度地图开发秘钥

我们使用的v.3.0版本

在项目中要使用百度地图API,必须要有秘钥,获取方法教程jspopularGL | 百度地图API SDK

引入在线百度地图

<style scoped>
#baiduMap {
  height: 100%;
  width: 100%;
}

</style>

<template>
  <div id="baiduMap"></div>
</template>

<script>
import $ from 'jquery'
/* eslint-disable */
export default {
  name:'baiduMap',
  data(){
    return{
      url:'http://api.map.baidu.com/api?v=3.0&ak=你自己申请的秘钥&callback=createMap'
    }
  },
  mounted(){
    this.initMap()
  },
  methods:{
    addBaiDuAPI(url){
      return new Promise((resolve)=>{
        let script = document.createElement("script");
        script.src = url;
        document.body.appendChild(script);
        resolve()
      })
    },
    async initMap() {
      const maxZoom =19;
      let that = this;
      await that.addBaiDuAPI(that.url);

      //百度地图加载成功,会回调createMap这个函数
      window.createMap = () => {
        window.BMAP_NORMAL_MAP.m.X3 = window.BMAP_NORMAL_MAP.m.mc = window.BMAP_NORMAL_MAP.m.maxZoom = window.BMAP_PERSPECTIVE_MAP.m.X3 = window.BMAP_PERSPECTIVE_MAP.m.mc = window.BMAP_PERSPECTIVE_MAP.m.maxZoom = window.BMAP_SATELLITE_MAP.m.X3 = window.BMAP_SATELLITE_MAP.m.mc = window.BMAP_SATELLITE_MAP.m.maxZoom = window.BMAP_HYBRID_MAP.m.X3 = window.BMAP_HYBRID_MAP.m.mc = window.BMAP_HYBRID_MAP.m.maxZoom = maxZoom;
        //创建Map实例
        let map = new BMap.Map("baiduMap", {minZoom: 3, maxZoom: 19}); // 创建Map实例
        map.centerAndZoom(new BMap.Point(116.404, 39.915), 11); // 创建点坐标,初始化地图,设置中心点坐标和地图级别
        map.setMapType(BMAP_NORMAL_MAP);
        window.baiduMap = map; //存储到全局变量baiduMap
        map.enableScrollWheelZoom(true); //开启鼠标滚轮缩放
        map.enableInertialDragging(); //两秒后开启惯性拖拽
        setTimeout(function (){
          //添加地图类型控件
          map.addControl(new BMap.ScaleControl({anchor: BMAP_ANCHOR_BOTTOM_LEFT, type: BMAP_NAVIGATION_CONTROL_ZOOM}));
          map.addControl(new BMap.NavigationControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT}));
          //地图类型,地图,卫星
          var size = new BMap.Size(20, 220);
          map.addControl(new BMap.MapTypeControl({mapTypes: [BMAP_NORMAL_MAP, BMAP_HYBRID_MAP], anchor: BMAP_ANCHOR_BOTTOM_RIGHT, offset: size,}));
          map.addEventListener("mousemove", function (e) {$(".BMap_cpyCtrl").text("鼠标位置:" + e.point.lng + "," + e.point.lat)});
          //城市控件
          size = new BMap.Size(70, 10);
          map.addControl(new BMap.CityListControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT, offset: size,}));
          /**
           map.addEventListener("zoomend", function() {
                let zoom = map.getZoom();
                map.centerAndZoom((new BMap.Point(lon, lat)),zoom)
              });
           **/
        },300)
      };
    },
  }
}
</script>

运行加载效果

加载离线地图

获取百度地图离线包

获取地址:链接:https://pan.baidu.com/s/1HgtmntYcQEdCDOii5ypazQ?pwd=yqe7提取码:yqe7

引入百度地图离线包

1、下载好的离线包,放在项目的公共资源目录下

2、修改代码,添加initOfflineMap方法加载离线地图

async initOfflineMap(){
      let that = this;
      //加载工具类javascript文件
      window.bmapConfig = {
        'tiles_path': '',      //显示普通地图,为空默认在 tiles/ 目录
        'tiles_satellite_path': '', //显示卫星影像,为空默认在 tiles_satellite/ ,只有底图没有地址标注
        'tiles_hybrid_path': ''  //显示带有街道的卫星影像,为空默认在 tiles_hybrid/,需和卫星影像配合使用
      };
      window.bmapConfig.home_dir = "/static/bmap_offline_demo/"; //地图API主目录
      window.bmapConfig.tiles_path = bmapConfig.home_dir + "/tiles";
      window.bmapConfig.tiles_satellite_path = bmapConfig.home_dir + "/tiles_satellite";
      window.bmapConfig.tiles_hybrid_path = bmapConfig.home_dir + "/tiles_hybird";
      await that.addScript(window.bmapConfig.home_dir + "map3.0.js");
      //创建Map实例
      let map = new BMap.Map("baiduMap", {minZoom: 3, maxZoom: 19}); // 创建Map实例
      map.centerAndZoom(new BMap.Point(116.404, 39.915), 11); // 创建点坐标,初始化地图,设置中心点坐标和地图级别
      map.setMapType(BMAP_NORMAL_MAP);
      window.baiduMap = map; //存储到全局变量baiduMap
      map.enableScrollWheelZoom(true); //开启鼠标滚轮缩放
      map.enableInertialDragging(); //两秒后开启惯性拖拽
       setTimeout(function (){
         //添加地图类型控件
         map.addControl(new BMap.ScaleControl({anchor: BMAP_ANCHOR_BOTTOM_LEFT, type: BMAP_NAVIGATION_CONTROL_ZOOM}));
         map.addControl(new BMap.NavigationControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT}));
         //地图类型,地图,卫星
         var size = new BMap.Size(20, 220);
         map.addControl(new BMap.MapTypeControl({mapTypes: [BMAP_NORMAL_MAP, BMAP_HYBRID_MAP], anchor: BMAP_ANCHOR_BOTTOM_RIGHT, offset: size,}));
         map.addEventListener("mousemove", function (e) {$(".BMap_cpyCtrl").text("鼠标位置:" + e.point.lng + "," + e.point.lat)});
         //城市控件
         size = new BMap.Size(70, 10);
         map.addControl(new BMap.CityListControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT, offset: size,}));
         /**
          map.addEventListener("zoomend", function() {
                let zoom = map.getZoom();
                map.centerAndZoom((new BMap.Point(lon, lat)),zoom)
              });
          **/
       },300)
    },

3、在mounted中使用,需要注释在线地图的方法。

mounted(){
    // this.initMap() // 加载在线地图
    this.initOfflineMap() // 加载离线地图
  },

4、出现淡黄的画面说明引入离线地图成功。

显示指定区域的地图影像

利用切图工具,获取中国地图任意区域的,使用百度地图提供的自定义图层API(getTilesUrl)加载图像。

有两种工具切图:1、全能电子地图下载器。2、百度地图切图工具。

区别:

  • 百度地图切图工具只能切街道图,不能切混合图
  • 全能电子地图下载器app已经提供地图区域,切那个区域由我们自己决定。百度地图切图工具是根据一张图片(png格式)进行切图,根据地图瓦片规则进行切片

根据自己场景需求进行选择。

全能电子地图下载器:https://pan.baidu.com/s/1OzdhPWpIqiRaSiWGs2CVzw?pwd=wc41提取码:wc41。

百度地图切图工具:链接:https://pan.baidu.com/s/1ANKedI6PDr3Hx6mG55XXcw?pwd=m0bi提取码:m0bi。

全能电子地图下载器

2、地图级别一般用13到17级,最大只能切到17级(勾选上18、19什么的也没用,切不了)

一个区域切的级别很多的话,切图速度很慢,如果非要切多级别的,建议级别分开切

3、点击地图,选百度地图,需要的地图类型只有街道图和混合图,这两种地图需要分开切图。

街道图

1、选街道图后,可以选两种切图方式,一种是自己框选,一种是选择某个地区。

2、选择存放路径,点击开始,开始切图。

3、切图完成后,在目录下会有baidumaps文件夹,里面的roadmap文件就是街道图文件。把roadmap文件夹里的全部文件复制到离线地图包bmap_offline_demo/目录下。

roadmap目录名称可以自定义名称

混合图

1、选混合图,其他步骤和街道图一样。

2、切图完成后,把overlay文件夹里的全部文件复制到离线地图包bmap_offline_demo/的tiles_hybird文件夹里,再把satellite文件夹里的全部文件复制到离线地图包bmap_offline_demo/的tiles_satellite文件夹里。

3、添加代码

getTilesUrl方法会在地图缩放改变时,自动调用。

zoom:地图当前所在的缩放级别。

切好的图最好放在服务器上面,因为切的级别越大,文件就越多。切图大小在几百M,G,T级别都是很正常。

//自定义图层
      let tileLayer = new BMap.TileLayer({isTransparentPng: true});
      tileLayer.getTilesUrl = function (tileCoord, zoom) {
        if (zoom >= 3) {
          var x = tileCoord.x;
          var y = tileCoord.y;

          if (x < 0) {
            x = 'M' + (-x);
          }
          if (y < 0) {
            y = 'M' + (-y);
          }
          //根据瓦片的文件路径拼接URL
          return '/static/bmap_offline_demo/roadmap/' + zoom + '/' + x + '/' + y + '.png';
        }
      };
      map.addTileLayer(tileLayer);

4、显示效果,地图显示的就是我们刚刚切好的区域图

百度地图切图工具

1、双击运行BaiduMapTileCutter.exe。

2、选择存储路径,输出类型选择仅图块,输入经纬度,点击下一步。

3、自定义放大级别,最大为19,最小为3。设置之后点击下一步。

4、作为图层保存,点击下一步,随后开始切图。

5、切图成功后,去保存路径查找。

将切好的放大级别的文件放到服务器或项目上,在bmap_offline_demo/目录下新建文件夹,文件夹名称自定义,把切换的瓦片 7.8.9这三个级别放到自定义文件夹目录里面。

需要注意的是,这个自定义文件目录的名称和代码里面的路径一致

完整代码

baiduMap.vue

<style scoped>
#baiduMap {
  height: 100%;
  width: 100%;
}

</style>

<template>
  <div id="baiduMap"></div>
</template>

<script>
import $ from 'jquery'
/* eslint-disable */
export default {
  name:'baiduMap',
  data(){
    return{
      url:'http://api.map.baidu.com/api?v=3.0&ak=你自己申请的秘钥&callback=createMap'
    }
  },
  mounted(){
    // this.initMap() // 加载在线地图
    this.initOfflineMap() // 加载离线地图
  },
  methods:{
    addScript(src) {
      let script = document.createElement("script");
      script.src = src;
      document.body.appendChild(script);
    },
    addBaiDuAPI(url){
      return new Promise((resolve)=>{
        let script = document.createElement("script");
        script.src = url;
        document.body.appendChild(script);
        resolve()
      })
    },
    async initMap() {
      const maxZoom =19;
      let that = this;
      await that.addBaiDuAPI(that.url);

      //百度地图加载成功,会回调createMap这个函数
      window.createMap = () => {
        window.BMAP_NORMAL_MAP.m.X3 = window.BMAP_NORMAL_MAP.m.mc = window.BMAP_NORMAL_MAP.m.maxZoom = window.BMAP_PERSPECTIVE_MAP.m.X3 = window.BMAP_PERSPECTIVE_MAP.m.mc = window.BMAP_PERSPECTIVE_MAP.m.maxZoom = window.BMAP_SATELLITE_MAP.m.X3 = window.BMAP_SATELLITE_MAP.m.mc = window.BMAP_SATELLITE_MAP.m.maxZoom = window.BMAP_HYBRID_MAP.m.X3 = window.BMAP_HYBRID_MAP.m.mc = window.BMAP_HYBRID_MAP.m.maxZoom = maxZoom;
        //创建Map实例
        let map = new BMap.Map("baiduMap", {minZoom: 3, maxZoom: 19}); // 创建Map实例
        map.centerAndZoom(new BMap.Point(116.404, 39.915), 11); // 创建点坐标,初始化地图,设置中心点坐标和地图级别
        map.setMapType(BMAP_NORMAL_MAP);
        window.baiduMap = map; //存储到全局变量baiduMap
        map.enableScrollWheelZoom(true); //开启鼠标滚轮缩放
        map.enableInertialDragging(); //两秒后开启惯性拖拽
        setTimeout(function (){
          //添加地图类型控件
          map.addControl(new BMap.ScaleControl({anchor: BMAP_ANCHOR_BOTTOM_LEFT, type: BMAP_NAVIGATION_CONTROL_ZOOM}));
          map.addControl(new BMap.NavigationControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT}));
          //地图类型,地图,卫星
          var size = new BMap.Size(20, 220);
          map.addControl(new BMap.MapTypeControl({mapTypes: [BMAP_NORMAL_MAP, BMAP_HYBRID_MAP], anchor: BMAP_ANCHOR_BOTTOM_RIGHT, offset: size,}));
          map.addEventListener("mousemove", function (e) {$(".BMap_cpyCtrl").text("鼠标位置:" + e.point.lng + "," + e.point.lat)});
          //城市控件
          size = new BMap.Size(70, 10);
          map.addControl(new BMap.CityListControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT, offset: size,}));
          /**
           map.addEventListener("zoomend", function() {
                let zoom = map.getZoom();
                map.centerAndZoom((new BMap.Point(lon, lat)),zoom)
              });
           **/
        },300)
      };
    },
    async initOfflineMap(){
      let that = this;
      //加载工具类javascript文件
      window.bmapConfig = {
        'tiles_path': '',      //显示普通地图,为空默认在 tiles/ 目录
        'tiles_satellite_path': '', //显示卫星影像,为空默认在 tiles_satellite/ ,只有底图没有地址标注
        'tiles_hybrid_path': ''  //显示带有街道的卫星影像,为空默认在 tiles_hybrid/,需和卫星影像配合使用
      };
      window.bmapConfig.home_dir = "static/bmap_offline_demo/"; //地图API主目录
      window.bmapConfig.tiles_path = bmapConfig.home_dir + "/tiles";
      window.bmapConfig.tiles_satellite_path = bmapConfig.home_dir + "/tiles_satellite";
      window.bmapConfig.tiles_hybrid_path = bmapConfig.home_dir + "/tiles_hybird";
      await that.addScript(window.bmapConfig.home_dir + "map3.0.js");
      //创建Map实例
      let map = new BMap.Map("baiduMap", {minZoom: 3, maxZoom: 19}); // 创建Map实例
      map.centerAndZoom(new BMap.Point(107.864933,25.990779), 14); // 创建点坐标,初始化地图,设置中心点坐标和地图级别
      map.setMapType(BMAP_NORMAL_MAP);
      window.baiduMap = map; //存储到全局变量baiduMap
      map.enableScrollWheelZoom(true); //开启鼠标滚轮缩放
      map.enableInertialDragging(); //两秒后开启惯性拖拽

      //自定义图层
      let tileLayer = new BMap.TileLayer({isTransparentPng: true});
      tileLayer.getTilesUrl = function (tileCoord, zoom) {
        if (zoom >= 3) {
          var x = tileCoord.x;
          var y = tileCoord.y;

          if (x < 0) {
            x = 'M' + (-x);
          }
          if (y < 0) {
            y = 'M' + (-y);
          }
          //根据瓦片的文件路径拼接URL
          return '/static/bmap_offline_demo/roadmap/' + zoom + '/' + x + '/' + y + '.png';
        }
      };
      map.addTileLayer(tileLayer);

       setTimeout(function (){
         //添加地图类型控件
         map.addControl(new BMap.ScaleControl({anchor: BMAP_ANCHOR_BOTTOM_LEFT, type: BMAP_NAVIGATION_CONTROL_ZOOM}));
         map.addControl(new BMap.NavigationControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT}));
         //地图类型,地图,卫星
         var size = new BMap.Size(20, 220);
         map.addControl(new BMap.MapTypeControl({mapTypes: [BMAP_NORMAL_MAP, BMAP_HYBRID_MAP], anchor: BMAP_ANCHOR_BOTTOM_RIGHT, offset: size,}));
         map.addEventListener("mousemove", function (e) {$(".BMap_cpyCtrl").text("鼠标位置:" + e.point.lng + "," + e.point.lat)});
         //城市控件
         size = new BMap.Size(70, 10);
         map.addControl(new BMap.CityListControl({anchor: BMAP_ANCHOR_BOTTOM_RIGHT, offset: size,}));
          map.addEventListener("zoomend", function() {
                let zoom = map.getZoom();
                map.centerAndZoom((new BMap.Point(107.864933,25.990779)),zoom)
              });
       },300)
    },
  }
}
</script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1655087.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

yolov8任务之目标检测

对象检测 对象检测是一项涉及识别图像或视频流中对象的位置和类别的任务。对象检测器的输出是一组包围图像中对象的边界框&#xff0c;以及每个框的类标签和置信度分数。当您需要识别场景中感兴趣的对象&#xff0c;但不需要确切知道对象在哪里或其确切形状时&#xff0c;对象检…

网络安全之ACL

ACL&#xff1a;访问控制列表——控制列表&#xff08;策略列表&#xff09;&#xff0c;是一个控制工具。 功能&#xff1a;&#xff01;、定义感兴趣路由&#xff08;控制层面&#xff09;。2、定义感兴趣流量&#xff08;数据层面&#xff09;。 例如&#xff1a; 假设在该…

AI换脸原理(7)——人脸分割参考文献TernausNet: 源码解析

1、介绍 这篇论文相对来说比较简单,整体是通过使用预训练的权重来提高U-Net的性能,实现对UNet的改进。该方法也是DeepFaceLab官方使用的人脸分割方法。在介绍篇我们已经讲过了UNet的网络结构和设计,在进一步深入了解TernausNet之前,我们先简单回顾下UNet。 U-Net的主要结构…

Django Admin后台管理:高效开发与实践

title: Django Admin后台管理&#xff1a;高效开发与实践 date: 2024/5/8 14:24:15 updated: 2024/5/8 14:24:15 categories: 后端开发 tags: DjangoAdmin模型管理用户认证数据优化自定义扩展实战案例性能安全 第1章&#xff1a;Django Admin基础 1.1 Django Admin简介 Dj…

【爬虫】爬取A股数据写入数据库(二)

前几天有写过一篇 【爬虫】爬取A股数据写入数据库&#xff08;一&#xff09;&#xff0c;现在继续完善下&#xff0c;将已有数据通过ORM形式批量写入数据库。 2024/05&#xff0c;本文主要内容如下&#xff1a; 对东方财富官网进行分析&#xff0c;并作数据爬取&#xff0c;使…

ORA-28575: unable to open RPC connection to external procedure agent

环境&#xff1a; Oracle 11.2.0.4x64 RAC AIX6.1版本SDE for aix oracle11g版本10.0 x64 sde配置情况如下&#xff1a; 检查oracle和grid用户下的$ORACLE_HOME/hs/admin/extproc.ora文件均包含有如下&#xff1a; SET EXTPROC_DLLSANY 两个节点sde下的user_libraries都正常…

npm安装指定版本,npm删除依赖,卸载依赖

安装指定版本 npm中安装指定的版本号&#xff0c;格式为 ‘包名版本号’ npm install 包名称版本号 --save 例如安装jquery: npm install jquery3.0.0 --save在package.json里面可以看到对应的包&#xff1a; "jquery": "^3.0.0"注意&#xff1a;已有…

Duplicate File Finder Pro for Mac激活版:重复文件清理软件

在繁杂的文件管理中&#xff0c;你是否曾为重复文件而烦恼&#xff1f;Duplicate File Finder Pro for Mac&#xff0c;正是你不可或缺的得力助手。这款专业级工具&#xff0c;能够迅速扫描并定位Mac系统中的重复文件&#xff0c;让你的存储空间恢复清爽。 通过强大的算法支持&…

天诚人脸物联网锁+网约房管理系统为智慧酒店、民宿管理赋能

随着互联网技术的发展&#xff0c;“网约房”逐渐步入受众视野&#xff0c;在改变旅客入住模式和生活方式的同时&#xff0c;为旅客旅游住宿创造了新的选择&#xff0c;也为拥有冗余房间资源的房东提供了新的营收路径。但是&#xff0c;网约房的管理问题频发&#xff0c;需要数…

Android 右键 new AIDL 无法选择

提示 (AIDL File)Requires setting the buildFeatures.aidl to true in the build file&#xff09; 解决方式&#xff1a; 在app的build.gradl中 adnroid{} 添加&#xff1a; buildFeatures{aidl true}

SpringCloud Alibaba Sentinel 修改Dashboard用户名和密码

目录 一、下载Sentinel的Jar包 二、在启动时修改用户名和密码的命令 三、测试登录成功 在网上找到了一大堆文章&#xff0c;没一个有用的&#xff0c;最终还是通过不断测试找到了这个方法。 一、下载Sentinel的Jar包 Releases alibaba/Sentinel GitHub 二、在启动时修改…

Electron项目中将CommonJS改成使用ES 模块(ESM)语法preload.js加载报错

问题 将Electron项目原CommonJS语法改成使用ES 模块&#xff08;ESM&#xff09;语法&#xff0c;preload.js一直加载不到&#xff0c;报错如下&#xff1a; VM111 renderer_init:2 Unable to load preload script: D:\Vue\wnpm\electron\preload.js VM111 renderer_init:2 E…

Postgresql使用dblink实现跨库查询

一、背景介绍 回调表callback&#xff0c;在test数据库下&#xff0c;数据内容如下 公司表company&#xff0c;在release数据库下&#xff0c;数据内容如下 现在的需求是查询company公司下的callback回调数据 二、实现思路 正常的想法直接两张表关联查询即可&#xff0c;很…

meshlab: pymeshlab保存物体的横截面(compute planar section)

一、关于环境 请参考&#xff1a;pymeshlab遍历文件夹中模型、缩放并导出指定格式-CSDN博客 二、关于代码 本文所给出代码仅为参考&#xff0c;禁止转载和引用&#xff0c;仅供个人学习。 本文所给出的例子是https://download.csdn.net/download/weixin_42605076/89233917中的…

Spring Security初探

url说明方法/login/oauth/authorize无登录态时跳转到/authentication/require&#xff0c;有登录态时跳转到/loginorg.springframework.security.oauth2.provider.endpoint.AuthorizationEndpoint#authorize/authentication/require自己写的用于重定向到登录页面的urlcn.merryy…

香港Web3,步履蹒跚

4月30日&#xff0c;6支香港虚拟资产现货ETF在香港交易所敲钟上市&#xff0c;正式迎来市场首秀。 而在前一周&#xff0c;香港证监会&#xff08;SFC&#xff09;官网就已列出华夏基金(香港)、博时国际和嘉实国际三家基金公司的比特币和以太坊现货ETF&#xff0c;并陆续披露了…

TypeScript学习日志-第二十三天(装饰器Decorator)

装饰器Decorator 一、类装饰器 ClassDecorator 其中返回的 target 是 Http 的构造函数&#xff0c;有了构造函数就不会去破坏其自身原有的结构&#xff0c;当我们 Http 里面有多个属性或者方法的&#xff0c;当是我们不想看或者改变它&#xff0c;这时候可以在构造函数中增加即…

短视频批量下载解决方案分享

对于作短视频运营的行业人员&#xff0c;获取对应的视频资源和素材是必不可少的。 所以需要一个批量搜索视频并且下载的工具非常重要 一&#xff1a;行业痛点&#xff1a; 1&#xff1a;只能通过单链接进行下载 2&#xff1a;不能通过关键词批量下载 3&#xff1a;无法获取…

python+pycharm安装教程

介绍 Python提供了高效的高级数据结构&#xff0c;还能简单有效地面向对象编程。Python语法和动态类型&#xff0c;以及解释型语言的本质&#xff0c;使它成为多数平台上写脚本和快速开发应用的编程语言&#xff0c;Python解释器易于扩展&#xff0c;可以使用C、C或其他可以通过…

Python深度学习基于Tensorflow(5)机器学习基础

文章目录 监督学习线性回归逻辑回归决策树支持向量机朴素贝叶斯 集成学习BaggingBoosting 无监督学习主成分分析KMeans聚类 缺失值和分类数据处理处理缺失数据分类数据转化为OneHot编码 葡萄酒数据集示例 机器学习的流程如下所示&#xff1a; 具体又可以分为以下五个步骤&#…