可视化城市可达性

本文介绍了如何使用Python从百度开放平台获取武汉市蔡甸区的医院POI数据,并进行数据处理,包括将location列的字符串转换为经纬度坐标。通过提取经纬度信息,为后续的城市可达性可视化奠定了基础。教程中还提到,后续计划以小区到兴趣点的距离来度量可达性,并给出了参考教程链接。
摘要由CSDN通过智能技术生成

可视化城市可达性

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:
参考教程:https://gitee.com/ni1o1/pygeo-tutorial/blob/master/15-.ipynb
可达性的度量方法:用路网节点到兴趣点的距离来度量;
(后期打算用每个小区到兴趣点的距离来度量)


提示:以下是本篇文章正文内容,下面案例可供参考

一、获取POI(兴趣点)

获取的平台:百度开放平台

import requests
import json
import pandas as pd
"""
下面是获取poi的程序
"""
def searchjson(query,region,page_num):  
    params ={
        "query":query,
        "region":region,
        "city_limit":False,
        "page_size":20,
        "page_num":page_num,
        "output":"json",
        "ak": '你自己的ak'
    } 
    r = requests.get("https://api.map.baidu.com/place/v2/search",params =params,timeout =5)
    return json.loads(r.text)
 
pois = []
page_num = 0
while True:
    print("抓取分页:",page_num)
    decodejson = searchjson("医院","蔡甸区",page_num)
    if decodejson.get("results"):
        parks += decodejson["results"]
        page_num += 1
    else:
        break
print("抓取结束")
df = pd.DataFrame(parks)
df.to_csv("武汉市蔡甸区医院.csv") #保存文件

在这里插入图片描述

二、POI数据处理

1.查看location列的格式

在这里插入图片描述

发现location列对应的值是str;
需要先将str转换成dict,
在提取lat(精度) 和lon(维度)

2.改变格式并生成lat lon列

import ast
for i,v in df['location'].items(): #把str转换成dict
    v = ast.literal_eval(v)
    df['location'][i] = v
    
df['lat'] =pd.DataFrame(df.location.to_list())['lat']
df['lng'] =pd.DataFrame(df.location.to_list())['lng']
df

在这里插入图片描述


三、可视化城市可达性

剩下的就主要就是按余庆学长的教程来
教程链接:https://gitee.com/ni1o1/pygeo-tutorial/blob/master/15-.ipynb
在这里插入图片描述

注意事项

1. 确定研究区域的边界

bbox = [30.43,113.8932,30.6231,114.3107]   #经开区研究范围的大致经纬度,GCj-02坐标系

确定方式:
(1)确定区域
在这里插入图片描述
(2)导出
在这里插入图片描述

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值