使用Python构建一个小的GIS系统

最近在学习python地理空间分析,这里完全使用Python构建一个小型的GIS应用,包含的功能:渲染专题地图,显示不同城市的人口数量;基于结构化的数据模型,进行基本的属性查询操作。这个示例完全使用python及标准库实现,有助于初学者了解Python的强大威力。

构建SimpleGIS

具体的代码主要分为两个部分。第一部分是数据模型部分,第二部分是简陋的地图数据渲染和属性查询部分。

第一部分:使用Python中的列表List进行数据组织,它的优势在于可以映射更复杂的数据结构。

# 完全使用python构建一个小型GIS系统
import turtle as t
t.pen(shown=False) # 隐藏画笔光标
firstItem = 0   
NAME = 0
POINTS = 1
POP = 2    
state = ["COLORADO",[[-109,37],[-109,41],[-102,41],[-102,37]],5187582]
cities = []
cities.append(['ZZ',[-104.98,39.74],634265])
cities.append(['LY',[-105.27,40.02],98889])
cities.append(['KF',[-107.88,37.28],17069])

 第二部分:使用python的turtle渲染地图。在GIS系统中最重要的功能实现就是世界坐标系及其转换函数,作用就在于将真实的经纬坐标转为屏幕坐标格式。我们知道大多说的图形引擎都会以屏幕的左上角或右下角作为坐标原点。然而turtle却是以屏幕坐标中心点作为坐标原点,也就是说它可以支持负的屏幕坐标系统,这是很少见的。大家可以体会下它与别的图形引擎

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值