AI
产品服务
解决方案
文档与支持
定价

所有文档

JSAPI 地铁图

更新时间: 2026/03/10 17:04

地铁图的“Hello, Subway”

首先通过一个简单的示例快速了解百度地铁图JS API。如下代码可以实现一个简单的全屏展示北京地铁图的DEMO,因为地铁图不支持PC浏览器,请用手机扫描二维码体验:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta
name="viewport"
content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"
/>
<title>地铁图展示</title>
<script
type="text/javascript"
src="https://api.map.baidu.com/api?type=subway&v=1.0&ak=您的密钥"
></script>
<style type="text/css">
#container {
height: 100%;
}
</style>
</head>
<body>
<div id="container"></div>
<script type="text/javascript">
/**
* 从所有城市列表中获取北京信息
* 结果格式
* {
* keyword: 'beijing',
* name: '北京',
* citycode: '131'
* }
*/
/* globals BMapSub */
var subwayCityName = "北京";
var list = BMapSub.SubwayCitiesList;
var subwaycity = null;
for (var i = 0; i < list.length; i++) {
if (list[i].name === subwayCityName) {
subwaycity = list[i];
break;
}
}
// 获取北京地铁数据-初始化地铁图
var subway = new BMapSub.Subway("container", subwaycity.citycode);
subway.setZoom(0.5);
</script>
</body>
</html>


下面我们分步向您介绍如何快速开始地铁图开发:

1. 申请百度账号和ak

点我申请

2. 准备页面

根据HTML标准,每一份HTML文档都应该声明正确的文档类型,我们建议您使用最新的符合HTML5规范的文档声明:

<!DOCTYPE html>

您也可以根据需要选择其他类型的文档声明,这样浏览器会以标准的方式对页面进行渲染,保证页面最大的兼容性。我们不建议您使用Quirks模式进行开发。

3. 适应移动端页面展示

下面我们添加一个meta标签,以便使您的页面更好的在移动平台上展示。

<metaname="viewport"content="initial-scale=1.0, user-scalable=no"/>
4. 设置容器样式

设置容器样式大小,使地铁图充满整个浏览器窗口:

#container{height:100%}
5. 引用百度地铁图API文件
<script type="text/javascript" src="https://api.map.baidu.com/api?type=subway&v=1.0&ak=您的密钥"></script>
6. 创建地铁图容器元素

地铁图需要一个HTML元素作为容器才能够展现到页面上。这里我们创建一个div元素。

<divid="container"></div>
7. 创建地铁图实例

地铁图API的命名空间是BMapSub,BMapSub.Subway类表示地铁图,通过new操作符可以创建一个地铁图实例。其中,第一个参数为地铁图容器的id;第二个参数为地铁图城市的citycode。 BMapSub.SubwayCitiesList中存储了城市名和citycode的对照关系。可以查询到某个城市的citycode。

var subwayCityName = '北京';
var list = BMapSub.SubwayCitiesList;
var subwaycity = null;
for (var i = 0; i < list.length; i++) {
if (list[i].name === subwayCityName) {
subwaycity = list[i];
break;
}
}
// 获取北京地铁数据-初始化地铁图
var subway = new BMapSub.Subway('container', subwaycity.citycode);
8. 调整地铁图缩放级别

地铁图支持从级别0.1到2的无极缩放。可以用过setZoom方法改变当前地铁图的缩放级别。

subway.setZoom(0.5);

至此,我们就已经完成了北京市地铁图的创建~

上一篇

账号和密钥获取

下一篇

展示地铁图

本篇文章对您是否有帮助?