市区择房分析(ArcPy实现)

1, 背景

如何找到环境好、购物方便、小孩上学方便的居住区地段是购房者最关心的问题。因此购房者就需要从总体上对商品房的信息进行研究分析,选择最适宜的购房地段。

2,目的

学会利用缓冲区分析和叠置分析解决实际问题。

3,数据

试验数据位于,“\Chp7\Ex_1.

4,要求

所寻求的市区是噪声要小,距离商业中心和各大名牌高中要近,是为了环境优雅离名胜古迹较近。综合上述条件,给定一个定量的限定如下:
(1)离主要市区交通要道200m之外,交通要道的车流量大,噪声产生的主要源于此(ST为道路类型中的主要市区交通要道);
(2)距大型商业中心的影响,以商业中心的大小来确定影响区域,具体是以其属性字段YUZHI;
(3)距名牌高中在750m之内,以便小孩上学便捷;
(4)距名胜古迹500m之内环境优雅;

具体流程图如下:

5,模型构建器

6,ArcPy实现

# -*- coding: utf-8 -*-
import arcpy
print "输入示例:D:\桌面\Chp7\Ex1"
arcpy.env.workspace = raw_input("请输入数据所在的文件绝对路径:").decode('utf-8')  # 获取资源路径
arcpy.Buffer_analysis('Marketplace.shp', 'Marketplace_Buff', "YUZHI_")  # Process: Marketplace.shp缓冲区
arcpy.Buffer_analysis('school.shp', 'school_Buff', "750 Meters")  # Process: school.shp缓冲区
arcpy.Buffer_analysis('famous place.shp', 'famous_place_Buff', "500 Meters")  # Process: famous place.shp缓冲区
arcpy.Intersect_analysis(['Marketplace_Buff.shp', 'school_Buff.shp', 'famous_place_Buff.shp'], 'Intersect')  # Process: 相交
arcpy.Select_analysis('network.shp', 'network_select', "TYPE = 'ST'")  # Process: 筛选字段为ST的记录
arcpy.Buffer_analysis('network_select.shp', 'network_select_Buff', "200 Meters")  # Process: network.shp缓冲区
arcpy.Erase_analysis('Intersect.shp', 'network_select_Buff.shp', '适宜区')  # Process: 擦除

注意:删除字段那里,如果出现错误的话,可能是乱码问题,干脆直接把删除字段这代码删除,继续执行也可以,
删除字段只是简化属性表罢了!

7,结果展示



后面对最终结果分五个等级,越绿的,说明评分越高,适宜性越好,越红的,说明评分越低,适宜性越差。区域居住适宜性分级就制作完毕了。

继续下一个实验O(∩_∩)O~~~

>>点我跳转 > 文章推荐

posted @ 2021-10-09 22:20  槑孒  阅读(347)  评论(0编辑  收藏  举报