用 QGIS 画矢量交通路线图
一、准备工作
1、安装插件
为了方便画图,我们安装了OpenLayers,QuickOSM两个插件。
如何安装插件,度娘上都有答案。下图中打勾的部分为安装好的插件:
OpenLayers提供了一些开放的地图数据,有了这些数据后,我们就不必一切从头开始,比如Bing的卫星地图,我们可以从卫星图上准确的描出所需要的线,点,多边型。
- Bing 卫星地图
- OpenStreetMap
2、创建项目
Qgis打开后,默认创建一个空白项目,且项目的默认坐标系为3857。
- 建立坐标系
有时Qgis自带的坐标系统未必能满足业务的需求,所以我们需要自定义自己的坐标系统。通过菜单里的设置->自定义坐标系统,弹出自定义坐标的对话框:
这是一个Proj.4的格式的坐标定义,图中是将上海的某个点作为中心点。
二、开始画图
1、创建图层
下图为创建图层对话框:
对于坐标系的选择,要看你手头的数据资料,如果是GPS设备测量得出的点,可以直接选择4326,这样地图中的坐标点就可以直接使用。如果通过高德地图等网络地图得到的坐标,则要选择相应的投影坐标系,否则创建的要素位置会不正确。
2、字段定义
字段为地理位置信息之外的信息,比如线条代表的实体的类型等,以便后期的查询分析。具体根据需要设置,不赘述。
3、绘制
首先,将图层设置为编辑模式。选中需要修改的图层,点击工具条的黄色铅笔状的图标,当图标为选中状态时,就可以在当前图层上画图了。
新增要素
点击“添加要素”,创建新的要素。先在地图点出相应的要素点,然后右击弹出字段对话框,填写相应的内容,点击确定完成绘制。
移动要素
先用选择工具选中要移动的要素,然后点击移动按钮,就可以在地图上拖放要素了。
4、渲染
通过样式,来展示要素在地图上呈现的样子。
三、空间数据库
为了提高数据的利用,可以将这些空间存储至数据库系统,现在主流的数据库都支持空间数据的存放,比如mssqlserver ,oracle等。
1、MSSqlserver
2、MySql
3、Oracle
除了通过UI来创建地图,还可以使用脚本来做一些地图要素的自动化或批量处理,请参考本人另一篇:《QGis 利用Python Console编写脚本进行批量处理》