用 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
用 QGIS 画矢量交通路线图的更多相关文章
- csv读入数据,用julia/matplotlib/pyplot 画矢量图导入word中
这是是用julia来实现画图.julia有三个画图库:Winston.Gadfly.PyPlot 这里用的是pyplot,事实上他是基于matplotlib的 1.首先在juno里安装两个库 juno ...
- arcgis画矢量图
总图 首先建立目标文件夹和目标文件(shp文件) 现在H:\ex_gis\下新建test文件夹,起名为test,再此目录下建立一个线要素文件. 在这里选择要素类型.这里以线为例,点面类推即可. 设置坐 ...
- Qgis 里的Python脚本介绍
QGIS 入门演示之<用 QGIS 画矢量交通路线图> 脚本编程之准备知识<Python 教程> QGIS API QGIS插件库 运行QGIS脚本,对于桌面应用来讲有4种方式 ...
- 抓取“矢量”的实时交通流量数据
1. 引言 最近老师有一个需求,就是想要抓取实时的矢量交通流量数据来做分析,类似于百度地图,高德地图的"实时路况"那种.平时的网络抓取工作一般是抓取网页上现成的数据,但是交通流量数 ...
- C#中如何生成矢量图
主要的功能就是使用C#画矢量图,然后导出到Word.Excel.Powerpoint中,并且能够再次被编辑.以下是解决过程: 首先应该确定在Office文档中可编辑图形使用的格式:学习了相关资料,了解 ...
- 【译】在Asp.Net中操作PDF - iTextSharp - 绘制矢量图
原文 [译]在Asp.Net中操作PDF - iTextSharp - 绘制矢量图 在上一篇iTextSharp文章中讲述了如何将现有的图片插入PDF中并对其进行操作.但有时,你需要在PDF中绘制不依 ...
- truetype技术和矢量字库的技术原理及实现(转)
源:truetype技术和矢量字库的技术原理及实现 广泛汉字矢量字库(HZKSLxxJ)格式 在矢量字库中,每个汉字都是以128 X 128点阵制成矢量数据.每个汉字 ...
- Android 开发 VectorDrawable 矢量图 (一)了解Android矢量图与获取矢量图
VectorDrawable 矢量图 三部曲: Android 开发 VectorDrawable 矢量图 (一)了解Android矢量图与获取矢量图 Android 开发 VectorDrawabl ...
- C#代码实现矢量画图
原文:C#代码实现矢量画图 版权声明:本文为博主原创文章,转载请附上链接地址. https://blog.csdn.net/ld15102891672/article/details/80275969 ...
随机推荐
- 20161013001 DataGridView 数据转 DataTable
DataTable dt2 = GetDgvToTable(Form_CY_ProjectRequirements_D); MessageBox.Show( dt2.Rows.Count.To ...
- 使用PHP QR Code生成二维码
使用PHP QR Code生成二维码 HP QR Code是一个PHP二维码生成类库,利用它可以轻松生成二维码,官网提供了下载和多个演示demo,查看地址: http://phpqrcode.so ...
- (IEEE-754) 字节数组与浮点数之间的互相转换(MODBUS float类型)
在做上位机开发过程中,经常会碰到字节数组与浮点数,整数等数据之间的转换,有时为了验证数据是否解析正确,得借助于IEEE浮点数工具,本文把基于c#实现的浮点数与字节数组(或16进制的字符串)转换的实现方 ...
- jQuery EasyUI教程之datagrid应用(二)
上次写到了让数据库数据在网页datagrid显示,我们只是单纯的实现了显示,仔细看的话显示的信息并没有达到我们理想的效果,这里我们丰富一下: 上次显示的结果是这样的 点击查看上篇:jQuery Eas ...
- python3 cgi传数据
用cgi向文本或者数据库写入数据 1.开启cgi服务 python -m http.server --cgi port[端口可选默认为8000] update.py代码 #coding:utf8im ...
- drupal 7在一个form新增或者修改一个字段
例如在以下页面新增一个工号字段 在模块文件里面通过hook_form_FORM_ID_alter 函数修改,比如 图中的helloworld是模块名称,也就是你在哪个模块里面写这个函数那么名称就是什么 ...
- Query Designer:公式冲突
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- MySQL 5.6 双机热备windows7
MySQL 5.6 双机热备 目录: 1.说明 2.数据手工同步 3.修改主数据库配置文件 4.修改从数据库配置文件 5.主数据库添加备份用户 6.从数据库设置为Slave 7.验证 1.说明 1)数 ...
- 《与小卡特一起学Python》 Code2
下边是一个猜数字的小游戏: 几乎所有语言都这样做的…… here we go! import random secret = random.randint(1,99) guess = 0 tries ...
- 关于 jquery和js获取宽度时只能取整数,取不到小数点
最近在改版自已的一个网站的时候,遇到了一个问题. 用jquery的width()函数获取元素宽度的时候,返回得到的是整数,而不是小数. 如下图,谷歌上显示的宽度为1078.89px 而我用控制台输出了 ...