如何加载使用天地图

使用API之前,先申请应用key

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8"/>
    <title>HELLO WORLD</title>
    <script type="text/javascript" src="http://api.tianditu.gov.cn/api?v=4.0&tk=您的密钥"></script>
    <script>
        var map;
        var zoom = 12;
        function onLoad() {
            map = new T.Map('mapDiv');
            map.centerAndZoom(new T.LngLat(116.40769, 39.89945), zoom);
            map.setMapType(TMAP_HYBRID_MAP);
        }
    </script>
</head>
<body onLoad="onLoad()">
<div id="mapDiv" style="position:absolute;width:500px; height:400px"></div>
</body>
</html>

1.在想要显示地图的html文件中引入天地图JavaScript API文件

<script type="text/javascript" src="http://api.tianditu.gov.cn/api?v=4.0&tk=申请的密钥"></script>

2.创建地图容器元素

地图需要一个HTML元素作为容器,展现在页面上。

<!--创建一个id为mapDiv的div元素-->
<div id="mapDiv" style="position:absolute;width:100%; height:98%"></div>

3.创建地图实例

var map = new T.Map('mapDiv');

4.确定经纬度坐标

var lnglat = new T.LngLat(lng,lat);

5.地图初始化

map.centerAndZoom(中心点坐标,地图级别);

6.设置地图的类别

//卫星和路网的混合视图
map.setMapType(TMAP_HYBRID_MAP);

这需要这样几个步骤,一个卫星和路网混合的地图就出现在您的页面上了!!

你可以使用以下代码来使用echarts加载地图: ```html <html> <head> <meta charset="utf-8"> <title>使用echarts加载地图</title> <script type="text/javascript" src="https://cdn.bootcdn.net/ajax/libs/echarts/4.9.0/echarts.min.js"></script> <script type="text/javascript" src="https://api.map.baidu.com/api?v=2.0&ak=您的密钥"></script> <script type="text/javascript" src="https://api.tianditu.gov.cn/api?v=4.0&tk=您的密钥"></script> <style> #main { width: 100%; height: 600px; } </style> </head> <body> <div id="main"></div> <script> var myChart = echarts.init(document.getElementById('main')); // 使用地图作为底图 var tdtLayer = new ol.layer.Tile({ preload: Infinity, source: new ol.source.XYZ({ url: 'http://t0.tianditu.com/DataServer?T=vec_w&X={x}&Y={y}&L={z}&tk=您的密钥' }) }); var baseMapLayer = new ol.layer.Group({ layers: [tdtLayer] }); var map = new ol.Map({ target: 'main', layers: [baseMapLayer], view: new ol.View({ projection: 'EPSG:4326', center: [104.07, 30.67], zoom: 12 }) }); echarts.util.mapData.params.params['成都'] = { getGeoJson: function (callback) { $.getJSON('../geoJson/chengdu.json', callback); } }; var convertedData = []; //向地图添加人口密度 $.get('../data/population.json', function (data) { echarts.registerMap('成都', data); data.features.forEach(function (feature) { convertedData.push({ name: feature.properties.name, value: Math.random() * 10000 }); }); myChart.setOption(option = { tooltip: { trigger: 'item' }, visualMap: { min: 0, max: 10000, left: 'left', top: 'bottom', text: ['High', 'Low'], seriesIndex: [1], inRange: { color: ['#e0ffff', '#006edd'] }, calculable: true }, geo: { map: '成都', roam: true, label: { normal: { show: true, textStyle: { color: 'rgba(0,0,0,0.4)' } } }, itemStyle: { normal: { borderColor: 'rgba(0, 0, 0, 0.2)' } } }, series: [ { name: 'Top 5', type: 'effectScatter', coordinateSystem: 'geo', data: convertedData.sort(function (a, b) { return b.value - a.value; }).slice(0, 5), symbolSize: function (val) { return val[2] / 10; }, showEffectOn: 'render', rippleEffect: { brushType: 'stroke' }, hoverAnimation: true, label: { normal: { formatter: '{b}', position: 'right', show: true } }, itemStyle: { normal: { color: 'purple', shadowBlur: 10, shadowColor: '#333' } }, zlevel: 1 }, { name: 'Area Name', type: 'map', geoIndex: 0, data: convertedData } ] }); }); </script> </body> </html> ``` 其中,需要把`您的密钥`替换成您的地图和百度地图的密钥。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值