用 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 ...
随机推荐
- mysql 批量导出建表语句 (视图,函数同理)
import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream;import ja ...
- js跨域访问,No 'Access-Control-Allow-Origin' header is present on the requested resource
js跨域访问提示错误:XMLHttpRequest cannot load http://...... No 'Access-Control-Allow-Origin' header is prese ...
- Swift基础语法学习总结(转)
Swift基础语法学习总结 1.基础 1.1) swift还是使用// 和/* */ 来注释,并且/* */允许多行注释. 1.2) swift使用print和println打印,它的传参是一个泛型 ...
- Python3基础 访问列表 两个索引值之间的所有元素
镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...
- SQLite数据库
数据持久化: 1.文件存储 适合用于存储一些简单的文本数据或二进制数据 存储数据:openFileOutput(文件名,操作模式),返回值为一个FileOutputStream对象,借助FileOut ...
- UVALive 3401 彩色立方体
https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_probl ...
- LookUpEditPopup自动调整宽度
this.Properties.BestFitMode = BestFitMode.BestFitResizePopup;
- codevs1409 拦截导弹2
[问题描述]一场战争正在 A 国与 B 国之间如火如荼的展开.B 国凭借其强大的经济实力开发出了无数的远程攻击导弹,B 国的领导人希望,通过这些导弹直接毁灭 A 国的指挥部,从而取得战斗的胜利!当然, ...
- css的小技巧
前几天看到<css揭秘>这本书,第一感觉是 css怎么能出这么厚的一本书,不过 细细一想,用好css真的可以实现很多想要的效果,节省很多js代码. 总结几个css的小技巧: 1,将所有元素 ...
- java简单计算器
写的一个小计算器,留着以后看吧. import java.awt.BorderLayout; import java.awt.Button; import java.awt.Color; import ...