利用百度地图获取地区边界坐标,在tableau中自定义地图

首先先利用一个网页代码,代码中调用百度地图的接口,获取地图的边界值

网页html和JS代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>获取地区轮廓线</title>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.3">
</script>
<style type="text/css">
body{font-size:13px;margin:10px}
#container{width:800px;height:500px;border:1px solid gray}
</style>
</head>
<body>
<div id="container"></div>
<br />
输入省、直辖市或县名称:<input type="text" id="districtName" style="width:80px" value="重庆市">
<input type="button" onclick="getBoundary()" value="获取轮廓线">

<script type="text/javascript">
var map = new BMap.Map("container");
map.centerAndZoom(new BMap.Point(116.403765, 39.914850), 5);
map.addControl(new BMap.NavigationControl({type: BMAP_NAVIGATION_CONTROL_SMALL}));
map.enableScrollWheelZoom();

function getBoundary(){       
    var bdary = new BMap.Boundary();
    var name = document.getElementById("districtName").value;
    bdary.get(name, function(rs){       //获取行政区域
console.log(rs)
        map.clearOverlays();        //清除地图覆盖物       
        var count = rs.boundaries.length; //行政区域的点有多少个
        for(var i = 0; i < count; i++){
            var ply = new BMap.Polygon(rs.boundaries[i], {strokeWeight: 2, strokeColor: "#ff0000"}); //建立多边形覆盖物
            map.addOverlay(ply);  //添加覆盖物
            map.setViewport(ply.getPath());    //调整视野         
        }                
    });   
}

</script>
</body>
</html>

这个网页展示效果是这个样子:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B6Ra2NgS-1611039040598)(/attached/image/20201216/20201216140025_904.png)]

输入框中可以输入地区,例如输入朝阳区:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4DzCFTqU-1611039040602)(/attached/image/20201216/20201216140133_205.png)]

在控制台中,可以看到坐标输出

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8oXyFVgm-1611039040603)(/attached/image/20201216/20201216140210_147.png)]

复制这些坐标,换格式之后到excel中,
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jcqwDCjI-1611039040604)(/attached/image/20201216/20201216140327_48.png)]

打开tableau,导入excel中的数据,
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hm1Cdjle-1611039040605)(/attached/image/20201216/20201216140412_660.png)]

在工作表中,双击经度和纬度,并且将点顺序拖到路径上,区名称拖到详细信息上,
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LHrgpUXR-1611039040607)(/attached/image/20201216/20201216140559_583.png)]

可以看到地图已经生成了。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZGKhkdmH-1611039040607)(/attached/image/20201216/20201216140635_449.png)]

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
地图上画出各省市边界,北京市密云县json内容如下: {"type": "FeatureCollection", "features": [{"type": "Feature","properties":{"id":"110228","name":"密云县","cp":[117.0923,40.5121],"childNum":1},"geometry":{"type":"Polygon","coordinates":[[[116.7586,40.7064],[116.7847,40.7016],[116.7888,40.714],[116.7902,40.727],[116.7819,40.7524],[116.7833,40.7579],[116.7902,40.7517],[116.8025,40.7462],[116.819,40.7504],[116.8272,40.749],[116.8396,40.7607],[116.8341,40.7703],[116.8506,40.7751],[116.8506,40.7785],[116.8671,40.7847],[116.8629,40.7922],[116.8712,40.7943],[116.8739,40.7991],[116.8808,40.7977],[116.8863,40.8012],[116.8959,40.7936],[116.8945,40.7819],[116.8973,40.7778],[116.9234,40.7737],[116.9247,40.7627],[116.9289,40.7565],[116.9234,40.7524],[116.9261,40.7449],[116.9412,40.7401],[116.9453,40.7284],[116.9563,40.7229],[116.9659,40.714],[116.9646,40.7092],[117.0044,40.6968],[117.0195,40.6954],[117.0305,40.692],[117.0497,40.7002],[117.084,40.7023],[117.0964,40.7057],[117.1115,40.7071],[117.117,40.6995],[117.1225,40.7009],[117.1527,40.6968],[117.1664,40.6989],[117.1788,40.6934],[117.1829,40.6975],[117.2063,40.6947],[117.231,40.6844],[117.242,40.6769],[117.2612,40.681],[117.2777,40.6666],[117.2914,40.6597],[117.3257,40.6604],[117.3367,40.6631],[117.3367,40.6666],[117.3463,40.6741],[117.3615,40.6748],[117.3903,40.6837],[117.4068,40.6865],[117.4205,40.6865],[117.4507,40.6796],[117.4644,40.6734],[117.4796,40.6776],[117.4947,40.6748],[117.5056,40.6666],[117.507,40.6549],[117.5029,40.6528],[117.5015,40.6364],[117.4796,40.6357],[117.4713,40.6474],[117.448,40.6419],[117.4301,40.6405],[117.4219,40.6377],[117.4178,40.6185],[117.4136,40.6062],[117.4205,40.5945],[117.4232,40.5821],[117.4301,40.5787],[117.426,40.5732],[117.4205,40.5691],[117.404,40.5739],[117.4013,40.5698],[117.3944,40.567],[117.3889,40.5615],[117.3766,40.5663],[117.3656,40.5759],[117.3505,40.5801],[117.334,40.5766],[117.3106,40.5766],[117.2955,40.567],[117.2667,40.5581],[117.2502,40.5485],[117.253,40.5416],[117.2502,40.5375],[117.2598,40.5196],[117.2475,40.5121],[117.2392,40.5176],[117.2337,40.5135],[117.2131,40.5128],[117.2104,40.5073],[117.209,40.497],[117.2173,40.4949],[117.2282,40.4812],[117.2255,40.4778],[117.2365,40.4688],[117.2351,40.4578],[117.2639,40.4414],[117.2571,40.4297],[117.2502,40.429],[117.2337,40.4166],[117.2324,40.4036],[117.2392,40.3988],[117.2406,40.3947],[117.2365,40.394],[117.2351,40.3892],[117.2282,40.3857],[117.2241,40.3754],[117.2186,40.3775],[117.209,40.3734],[117.1925,40.3761],[117.1774,40.3748],[117.1637,40.3706],[117.1472,40.372],[117.1472,40.3672],[117.139,40.3624],[117.1184,40.3548],[117.1129,40.3542],[117.1005,40.3603],[117.0593,40.3377],[117.0538,40.337],[117.0525,40.3439],[117.0374,40.3473],[117.0236,40.337],[117.0126,40.326],[117.0113,40.3082],[117.0058,40.3027],[117.0003,40.302],[117.0044,40.2958],[116.9728,40.2848],[116.9522,40.2621],[116.9495,40.2567],[116.9659,40.2374],[116.9536,40.2292],[116.9412,40.2237],[116.9316,40.2306],[116.9206,40.223],[116.9028,40.2244],[116.8973,40.2319],[116.8918,40.2347],[116.8932,40.2415],[116.8739,40.2683],[116.8753,40.2759],[116.8712,40.2889],[116.8588,40.2917],[116.8492,40.3102],[116.8341,40.3082],[116.8272,40.2985],[116.8231,40.2862],[116.819,40.2834],[116.808,40.2869],[116.7888,40.2889],[116.7833,40.2793],[116.7696,40.2731],[116.7517,40.2752],[116.7448,40.2793],[116.7352,40.2793],[116.7435,40.2889],[116.7435,40.2944],[116.7668,40.3143],[116.7696,40.3219],[116.7682,40.3253],[116.7517,40.3267],[116.7503,40.3315],[116.7448,40.3349],[116.7448,40.3391],[116.7297,40.3349],[116.7311,40.3391],[116.7229,40.3397],[116.727,40.361],[116.7188,40.361],[116.7188,40.3693],[116.7133,40.3686],[116.7064,40.3761],[116.7119,40.3802],[116.7091,40.3871],[116.7119,40.3919],[116.7215,40.396],[116.7242,40.4036],[116.7242,40.4166],[116.7201,40.4235],[116.7188,40.4297],[116.7201,40.4386],[116.7229,40.4427],[116.7229,40.4475],[116.7078,40.4661],[116.7009,40.4812],[116.6927,40.4881],[116.6982,40.4942],[116.7009,40.508],[116.7119,40.5183],[116.7133,40.5231],[116.7174,40.5251],[116.7091,40.532],[116.7091,40.543],[116.6776,40.5519],[116.6844,40.554],[116.6982,40.5656],[116.7064,40.5643],[116.7146,40.5746],[116.7119,40.5849],[116.7091,40.5904],[116.7105,40.6007],[116.705,40.6027],[116.7078,40.6075],[116.7023,40.6151],[116.7064,40.624],[116.7023,40.6316],[116.7119,40.6425],[116.7119,40.6556],[116.7091,40.6618],[116.7146,40.668],[116.7146,40.6796],[116.7311,40.6913],[116.7476,40.6968],[116.7586,40.7064]]]}} ]}
### 回答1: Tableau是一款流行的商业智能软件,用于数据分析和可视化。它支持导入各种地图服务,包括百度地图TMS(Tile Map Service)。 要在Tableau导入百度地图TMS,可以按照以下步骤操作: 1. 首先,在百度地图开放平台上注册一个开发者账户并创建一个新应用程序。获取应用程序的Access Key和Secret Key。 2. 打开Tableau软件,并选择“文件”菜单下的“连接到数据”选项。 3. 在“连接到数据”对话框,选择“Spatial File”(空间文件)选项。 4. 在“数据连接窗口”,选择“TMS”作为数据输入方式。 5. 输入百度地图的TMS URL。该URL由以下几个部分组成:地图服务URL、Access Key和Secret Key。格式如下: http://api0.map.bdimg.com/gettiles?styles=pl&x={x}&y={y}&z={z}&udt=20201028&appkey=<Access_Key>&cdnurl=<CDN_URL>&sign=<Signature> 6. 在TMS URL,将<Access_Key>替换为你的应用程序的Access Key,将<CDN_URL>替换为你的百度地图应用程序的CDN URL,将<Signature>替换为基于Secret Key计算的签名。 7. 点击“测试连接”按钮,确保数据连接正常。 8. 点击“连接”按钮,将百度地图TMS导入Tableau。 导入成功后,你可以将百度地图作为背景地图Tableau进行数据分析和可视化。你可以添加其他数据源并在地图上叠加显示,通过图表和筛选器来了解和交互数据。 以上就是在Tableau导入百度地图TMS的简要步骤。希望对你有所帮助! ### 回答2: 要在Tableau导入百度地图的TMS(Tiled Map Service),可以按照以下步骤进行操作: 1. 首先,在Tableau的工具栏选择“Maps”选项。 2. 在“地图”选项卡,选择“背景地图样式”下拉列表的“Web 地图服务(WMTS、TMS)”选项。 3. 在“URL”字段,输入百度地图的TMS服务的URL地址。例如,百度地图TMS的URL可以是:http://online{0-2}.map.bdimg.com/onlinelabeltile/?qt=tile&x={0}&y={1}&z={2}&styles=pl,其{0}、{1}、{2}分别代表瓦片的x、y、z坐标。 4. 在“投影”字段,选择相应的地图投影。百度地图的投影为“Web Mercator”。 5. 点击“连接”按钮进行连接和导入。 导入完成后,Tableau将通过TMS服务加载百度地图作为底图。可以在地图上添加数据,进行数据分析和可视化。 需要注意的是,百度地图的TMS服务可能会有一定的使用限制,包括请求频率限制以及权限限制。在使用之前,需要确认是否具备合法的访问权限,并了解相关的服务使用条款和条件。 以上是将百度地图TMS导入Tableau的简要介绍,希望对你有所帮助。 ### 回答3: Tableau是一种数据可视化工具,可以将数据以各种图表形式直观地展示出来。百度地图是国内最大的在线地图服务提供商之一,提供了丰富的地理数据和服务。Tableau可以通过导入百度地图的TMS(Tile Map Service)来展示地理位置信息。 首先,要导入百度地图TMS,我们需要获得百度地图的TMS地址。这可以通过在百度地图开放平台注册账号并创建应用程序来获得。在应用程序管理页面,可以找到TMS地址,并将其复制。 接下来,在Tableau,我们可以选择“地理”类别下的“地图”选项,然后选择“百度地图 TMS”。在“连接”对话框,将之前复制的TMS地址粘贴到“TMS URL”字段。 点击“连接”按钮后,Tableau会自动加载百度地图的TMS,并将其显示在工作区。此时,我们可以根据需要添加其他数据源,例如Excel表格或数据库。将这些数据与百度地图TMS结合起来,就可以创建具有地理位置信息的图表了。 在Tableau,我们可以使用各种图表类型来展示地理位置信息,例如地图、透视表、散点图等。我们可以根据需要添加颜色、标签或过滤条件来进一步定制这些图表。 另外,Tableau还提供了一些交互功能,例如可以放大、缩小、平移地图,以及点击某个位置来显示与之相关的详细信息等。 总之,通过导入百度地图TMS,Tableau可以实现丰富的地理数据可视化功能。我们可以根据需要创建各种图表来展示地理位置信息,并通过Tableau的强大功能对数据进行分析和探索。这可以帮助用户更好地理解和利用地理数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值