需求:

将带有经度、纬度(WGS84坐标系)坐标的文本(*.txt)转换成指定投影坐标系的shp文件并计算x,y坐标。

环境和工具:

WIN10、QGIS2.16、带有经纬度坐标的文本。格式如下图:

1、创建矢量图层

打开QGIS,选择Layer-->Add Layer-->Add Delimited Text Layer 菜单,如下图所示:

2、导入文本坐标

弹出创建图层对话框,选择带有坐标的文本文件,选择自定自定义分割符(Custom delimiters),选择空格(Space),在X field和 Yfield下拉框中选择对应的x、y坐标,然后点击确定,如下图所示:

3、选择坐标系

点击确定之后需要选择坐标系,这里选择WGS 84地理坐标系 在Filter搜索框中输入:WGS 84 选择EPSG:4326的坐标系,如下图所示:

4、另存矢量图层到本地计算机

这样数据就被导入进来了,然后另存数据,选中导入的图层,右键,选择Save As,如下图所示:

5、设置导出图层参数

打开另存为对话框,这里导出的格式为ShapeFile。填写好文件路径和坐标系之后,点击确定就可以导出了,导出后文件会自动加载到QGIS中,如下图所示:

6、打开属性表

右键打开shp图层的属性表,如下图所示:

7、打开字段计算器

打开属性表后开始计算X、Y坐标,点击属性表上面的:字段计算器(Calculator),如下图所示:

8、计算X投影坐标

打开字段计算器后开始计算要素的投影坐标,选择Create a new field,输入字段名称,字段类型和精度之后、在row_number目录树中选择Geometry节点下面的$x用来计算要素的x坐标。双击,将计算公式添加到左侧的计算框中,计算框下方会出现输出预览(Output preview),来查看输出结果是否正确,如果出现红色字体提示则出现了计算错误。然后点击确定即可得到计算结果。如下图所示:

计算结果如下图所示:

9、计算Y投影坐标

计算Y坐标同理,如下图所示:

PS:

这里说一下同样是x,y,为什么坐标不一样。

因为他们使用的坐标系不一样,文本里面的经纬度使用的是WGS 1984 地理坐标系,也是球面坐标系。而转换后的坐标系是墨卡托(Web Mercator)投影坐标系,是平面坐标系。他是将球面坐标经过一定的投影规则转化成平面坐标的。

想更加深入的了解坐标系可以自行百度,或者浏览以下博客:

Web Mercator 公开的小秘密

投影坐标系与地理坐标系的区别

地理坐标系、大地坐标系与地图投影与重投影详解

QGIS WGS84转其它坐标系并计算坐标的更多相关文章

  1. WGS84、Web墨卡托、火星坐标、百度坐标互转

    转自:1.http://blog.csdn.net/wildboy2001/article/details/12031351 2.http://kongxz.com/2013/10/wgs-cgj/ ...

  2. WGS84与CGCS2000坐标系

    1.WGS84,WGS是世界大地测量系统World Geodetic System的缩写,84是说此坐标系是1984年建立的:   2.自上世纪60年代,美国军方相继推出WGS60.WGS66.WGS ...

  3. for循环/计算坐标

    for循环计算坐标 webqq里面有类似桌面的各种图标,是绝对定位的,这样可以拖动改变位置,用浮动的话,没法拖动. <!DOCTYPE html> <html lang=" ...

  4. 百度地图API 地图圈区域并计算坐标点是否在区域内

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. (数据科学学习手札60)用Python实现WGS84、火星坐标系、百度坐标系、web墨卡托四种坐标相互转换

    一.简介 主流被使用的地理坐标系并不统一,常用的有WGS84.GCJ02(火星坐标系).BD09(百度坐标系)以及百度地图中保存矢量信息的web墨卡托,本文利用Python编写相关类以实现4种坐标系统 ...

  6. 使用js对WGS-84 ,GCJ-02与BD-09的坐标进行转换

    获取到经纬度在用百度地图进行定位时,却发现行驶轨迹的路线定到海里面去了.从网上查阅,知道此方法. 出处:https://www.jianshu.com/p/53f00ba897f7 一.在进行地图开发 ...

  7. ArcGIS栅格影像怎么从WGS84地理坐标转成Xian80投影坐标

    事情是这样的,我下载了一个WGS84坐标系的影像图,需要加载到Xian80投影坐标系下,所以需要对影像图进行坐标系的转换 1.因为涉及到两个参考椭球的问题,首先需要计算七参数,如何计算七参数,请参考我 ...

  8. 地球坐标系(WGS-84)转火星坐标系(GCJ)

    /** * 单点坐标纠偏 */ var pi = 3.14159265358979324; var a = 6378245.0; var ee = 0.00669342162296594323; va ...

  9. android中的坐标系以及获取坐标的方法

    android中有两种坐标系,分别称之为Android坐标系和视图坐标系.而对应的也有一些相关的方法可以获取坐标系中的 坐标值.只有搞清楚这些区别,才能在实现的时候不至于出错或者得不到你想要的效果. ...

随机推荐

  1. 原生sql和 TP sql怎么关联?

    整合后

  2. 关于浏览器ip代理导致定位错乱问题的坑

    http://m.welltrend.com.cn/网站在Android手机的qq浏览器或者uc浏览器或者在微信中打开连接访问时,点击右侧的聊天按钮,经常出现手机在北京结果定位到天津的问题,或者广州的 ...

  3. 最短路径Dijkstra算法和Floyd算法整理、

    转载自:http://www.cnblogs.com/biyeymyhjob/archive/2012/07/31/2615833.html 最短路径—Dijkstra算法和Floyd算法 Dijks ...

  4. [C++] 烦人的error LNK2019和error LNK2001

    常见原因: 没有正确的设置引用的lib,新手常犯这个错误,这是最容易解决的问题. extern "C"的问题.如果C++写的dll要给C程序用,那么就要注意extern " ...

  5. tf.train.slice_input_producer()

    tf.train.slice_input_producer处理的是来源tensor的数据 转载自:https://blog.csdn.net/dcrmg/article/details/7977687 ...

  6. E40笔记本无线网卡

    E40笔记本无线网卡详情 网卡名称 Intel(R) Dual Band Wireless-AC 3160 网卡厂商 英特尔 Mac地址 34:E6:AD: 规格 - 基本要素 状态 Launched ...

  7. 解决netcore在docker容器中连接oracle报错(timezone region not found)

    错误提示: timezone region not found错误原因:docker 容器内时区不是 CST 导致解决办法:1.在dockerfile 中增加一下命令ENV TZ=Asia/Shang ...

  8. ES6类的继承

    ES6 引入了关键字class来定义一个类,constructor是构造方法,this代表实例对象. constructor相当于python的init 而this 则相当于self 类之间通过ext ...

  9. CSS一行显示,显示不下的用省略号显示

    CSS一行显示,显示不下的用省略号显示 .abc{ white-space: nowrap; text-overflow: ellipsis; overflow: hidden; } 复制上面代码即可 ...

  10. 驳“C语言已经死了”

    http://blog.csdn.net/xushiweizh/article/details/1476422