前几天写了一篇关于制作公交路线图的文章。有朋友问我能不能做一张地铁图。以城市为例,在高德地图地铁页面抓包,抓包地址为:http://map.amap.com/subway/index.html?&1100北京地铁信息界面为:http://map.amap.com/service/subway?_159997789354=&srhdata=1100_drw_beijing.json将json数据解析成Bmap数据格式importrequestsimportjsonurl='http://map.amap.com/service/subway?_1599997789354=&srhdata=1100_drw_beijing.json'response=requests.get(url)result=json.loads(response.text)stations=[]foriinresult['l']:station=[]forjini['st']:station.append([float(k)forkinj['sl'].split(',')])stations.append(station)print(stations)1.北京地铁地图frompyecharts.chartsimportBMapfrompyechartssimportoptionsasoptionsfrompyecharts.globalsimportBMapType,ChartTypec=(BMap(init_opts=opts.InitOpts(width="1600px",height="800px")).add_schema(baidu_ak="",#百度秘钥akcenter=[116.397128,39.916527],#当前视角的中心点,用经纬度表示zoom=14,#Th当前视角的缩放Ratiois_roam=True,#是否开启鼠标缩放和平移漫游).add(series_name="",type_=ChartType.LINEs,data_pair=stations,is_polyline=True,#是否是折线is_large=True,#是否开启大范围折线图的优化,当数据图形很多(>=5k)时,可以开启linestyle_opts=opts.LineStyleOpts(color="purple",opacity=0.6,width=1),effect_opts=opts.EffectOpts(trail_length=0.5),).add_control_panel(copyright_control_opts=opts.BMapCopyrightTypeOpts(position=3),maptype_control_opts=opts.BMapTypeControlOpts(type_=BMapType.MAPTYPE_CONTROL_DROPDOWN),scale_control_opts=opts.BMapScaleControlOpts(),overview_map_opts=opts.BMapOverviewMapControlOpts(is_open=True),navigation_control_opts=opts.BMapNavigationControlOpts(),geo_location_control_opts=opts.BMapLocGeoLocationMapcontrol_opts(),geo_location_control_opts=opts.BMapLocGeoLocationMapcontrol_opts(),geo_location_control_opts=opts.BMapOverviewMapControlOpts(is_open=True)(subwayLocationControlOptsbook)图3.广州地铁地图4.深圳地铁地图赶快为你的城市制作一张地铁地图吧!
