QGIS 导入文本数据(WKT)
在做GIS数据处理的时候,经常会遇到原始数据是 text、csv、Excel 等格式的数据。要使用数据前提是要先转换数据。
这里是介绍用 QGIS 导入数据。打开导入方式如下(根据自己的文本类型选择不同的“文件格式”):

一、点数据
点数据的导入比较简单。QGIS 也单独对点有导入方式。有对应的 X、Y 字段的选择即可,如果有 Z、M 字段的也可以选择相应字段。

二、WKT 方式导入
WKT(Well-l=known text)是一种文本标记语音,用于表示矢量几何对象、空间参照系统以及空间参照系统之间的转换。它的二进制表示方式,叫做 WKB(Well-known binary),WKB 更胜于在传输和在数据库中存储相应的信息。该格式是由 OGC(开发地理空间联盟)制定。
WKT 这个方式适用各种矢量数据结构,前提是要符合 WKT 的格式要求。首先我们先了解下 WKT 一些基本的矢量几何图形的定义:
// 点
POINT(6 10) // 线
LINESTRING(3 4,10 50,20 25) // 面
POLYGON((1 1,5 1,5 5,1 5,1 1),(2 2,2 3,3 3,3 2,2 2)) // 多点
MULTIPOINT(3.5 5.6, 4.8 10.5) // 多线段
MULTILINESTRING((3 4,10 50,20 25),(-5 -8,-10 -8,-15 -4)) // 多面
MULTIPOLYGON(((1 1,5 1,5 5,1 5,1 1),(2 2,2 3,3 3,3 2,2 2)),((6 3,9 2,9 4,6 3))) // 几何集合
GEOMETRYCOLLECTION(POINT(4 6),LINESTRING(4 6,7 10)) // 带 Z、M 的点
POINT ZM (1 1 5 60) // 带 M 的点
POINT M (1 1 80)
这就基本可以满足我们的需求,如果你已有的文本格式是没有任何格式规范的,可以处理成 WKT 的格式。
下面是我在 Excel 中处理成 WKT 格式的操作(给出线段起始点,拼接成 WKT格式),Excel 拼接的写法,可自行百度:

处理完成后,就可以在 QGIS 里面使用 WKT 方式导入线、面等其他几何数据结构:

三、设置、转换图层坐标系
这里再介绍下在 QGIS 里面转换坐标系的方式。以 Tiff 格式为例,从 WGS84 转为 CGCS2000(因为这个相差不大,可以互转,其他转换主要是投影),菜单栏“栅格”——“投影”——“变形(重投影)”,。

点击后跳出“变形(重投影)”界面,这里可以选择“输入图层”、“源CRS”、“目标CRS”(Tiff 转换还有一些其他参数,自行选择)。选择 CRS 框右侧的图标弹出坐标系选择器界面。

坐标系比较多,我们可以输入坐标系名称、EPSG 等进行过滤,快速找到需要的坐标系,如下图就是通过 4326 和 China Geodetic Coordinate System 2000 搜索的结果:

QGIS 导入文本数据(WKT)的更多相关文章
- 使用sqlloader向oracle导入文本数据
文本文件如下,注意文件名必须有后缀,文本行首也需要|分隔符:[oracle@ycr test]$ more person.txt|aaa|123|m|aaa|123|m|aaa|123|m|aaa|1 ...
- Bulk Insert:将文本数据(csv和txt)导入到数据库中
将文本数据导入到数据库中的方法有很多,将文本格式(csv和txt)导入到SQL Server中,bulk insert是最简单的实现方法 1,bulk insert命令,经过简化如下 BULK INS ...
- 用C#实现的两个试验编程(txt文本数据的导入,和数据导出为TXT)
1. 文件的存取 数据文件1.txt为学生成绩统计表,要对它做一个统计工作.文件中若一个人有多个成绩,则取他们的最好成绩来统计,然后计算全班平均成绩:统计0-69.70-79.80-89.90-100 ...
- MapReduce将HDFS文本数据导入HBase中
HBase本身提供了很多种数据导入的方式,通常有两种常用方式: 使用HBase提供的TableOutputFormat,原理是通过一个Mapreduce作业将数据导入HBase 另一种方式就是使用HB ...
- shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中
shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中 利用shell脚本将文本数据导入到mysql中 需求1:处理文本中的数据,将文本中的数据插入到mys ...
- 文本数据增量导入到mysql
实现思路: 实现Java读取TXT文件中的内容并存到内存,将内存中的数据和mysql 数据库里面某张表数据的字段做一个比较,如果比较内存中的数据在mysql 里存在则不做处理,如果不存在则 ...
- MySQL 快速导入大量数据 资料收集
一.LOAD DATA INFILE http://dev.mysql.com/doc/refman/5.5/en/load-data.html 二. 当数据量较大时,如上百万甚至上千万记录时,向My ...
- Oracle通过sqlplus spool导入导出数据
第一部分(实例,主要分两步),第二部分(参数小总结),第三部分(完全参数总结) 第一部分 第一步 :这是我的导出数据的脚本call.sqlconn scott/tigerset echo offset ...
- Oracle导入excel数据方法汇总[转]
摘要:在程序编制过程和数据汇总交换过程中,经常会碰到需要将其他人员在office办公环境下编制的文件数据内容导入oracle中的情况.目前程序开发者经常使用的方法有如下几种:1,使用oracle提供的 ...
- mysql导出csv/excel文件的几种方法,mysql的load导入csv数据
方法一 php教程用mysql的命令和shell select * into outfile './bestlovesky.xls' from bestlovesky where 1 order by ...
随机推荐
- java中的数组遍历(简便小方法)
int[] a = {1,2,3,4}; for(int k:a){ System.out.println(k); //注意冒号后面直接写数组名即可. //注意,k的值就是数组a中某一项的值,即语句& ...
- 31 ModelForm常用功能--扩充
ModelForm自定义字段的显示效果 class ChargeModelForm(BootStrapModelForm, forms.ModelForm): # 静态变量 # charge_type ...
- vue父子件,子件页面table数据列按条件显示不同的内容
需求:在父件中点击按钮.子件弹框中,table列根据条件显示不同的数据 实现思路:点击按钮,执行不同的方法,方法中参数值不同,从而展示不同的columns. 父件按钮如下图: 父件中导入子件需要注意的 ...
- oracle表中增加字段sql
declare v_Count1 int := 0; v_Count2 int := 0;begin select count(1) into v_Count1 from user_all_table ...
- html 手机端适配不同手机高度 ,把内容居中显示
手机端适配不同手机高度 ,把内容居中显示,可以将div.img.section.span.p等等元素,设置 top:50%; margin-top:xxvw; 这样可以保证主题内容居中显示.
- php success error 封装跳转
/** * Warning提示信息 * @param string $type 提示类型 默认支持success, error, info * @param string $msg 提示信息 * @p ...
- vite+vue3批量导入静态资源图片;动态绑定大量图片
vite版本:vite3:vue版本:vue3 打包上线后发现,动态绑定的图片皆失效. 单图可用 import 导入解决,但是若有大量图片,一一导入则耗时耗力. vue2+webpack 可用 req ...
- HTML悬浮div
需求,html底部为地图,上层是各个div HTML<body> //地图 <div id='map' id="demo1"></div> &l ...
- mysql索引的面试常问问题
- 怎样修改linux内核
1.先查看linux内核 uname -a 2.打开内核配置文件 sudo vi /etc/default/grub 3.跟新grub文件 sudo update-grub 4.最后重启电脑 sudo ...