介绍 为了方便GIS地图处理,这里有一些指向地理空间数据和其他与GIS相关的东西的重要资源的链接,您可能会觉得有用: leaflet 数据下载 shapefile格式由Esri作为(主要是开放的)规范进行开发和管理...,在空间上将几何形状描述为“点”,“折线”或“多边形”。...每个几何都有一组关联的属性。从广义上讲,这些有点像OSM的标签。...leaflet 提供了shape数据下载,但是仅局限于OSM data 15994433595254.jpg Data Derived from OpenStreetMap for Download...非常R友好:将数据存储为sf和sp软件包格式的.rds文件,Geopackage(.gpkg)格式, GADM maps and data 15994437012223.jpg Reference
可导出geojson shapefile osm svg格式· 它能绘制细节丰富的失量建筑物轮廓,并支持高度· 它能一键生成建筑分层分户矢量数据· 它能绘制无缝地理网格,支持层级数据· 它能绘制各种点/...· 它能加载和维护海量点/线/面数据· 它能设计GIS场景下的三维漫游· 它能设计GIS场景下的三维模型管理,模型定位/3D点序列· 它能导出支持属性映射的第三方数据格式· 它能导出成GeoJSON、ShapeFile...、OSM格式· 它能导出丰富的建筑物数据· 它的用户主要来自政府、企业、高校、设计院等机构,数据完全本地化· 它同样可作为GIS数据标注来使用出色的傻瓜化的轮廓绘制能力,绘制精美的轮廓自由绘制、矩形绘制...属性值可以自动设置要素填充色支持自定义属性字段映射,完美对接第三方业务系统丰富的GIS数据导出可导出为geojson shapefile osm svg格式OSM格式 快速贴图转城市模型osm转城市模型支持更大数据量维护大数据量的加载...编辑 删除上海市60w+建筑物按轮廓裁剪支持在GIS场景下三维漫游设计生产的GIS数据有更多的玩法,你可以在软件中自定义漫游路线,漫游镜头设计。
通常我们可以在 https://www.openstreetmap.org/export 中选择矩形区域内的路网矢量数据进行下载,但这种方式对选择区域的大小有一定限制,想获取较大范围区域的路网数据并下载比较费事...;而另一种方式是事先下载已经整合好的大区域的文件,譬如在 http://download.geofabrik.de/ 中提供了各大洲、国家等大范围的数据整合包,可以花费一定时间将其下载下来,再在需要哪些小区域时在本地...GIS软件或编程工具中裁剪下所需的范围路网,但这种方式一是对电脑资源要求较高,譬如中国范围路网信息shapefile文件大小达到了800多兆,二是OSM的路网信息不定期更新之后,要想及时跟上最新数据,就需要人工持续下载数据...为了更加灵活自由,且即时地获取最新版本的OSM路网,我们可以利用Python,来编写脚本工具方便快捷地检索或下载OSM可以识别出的各个级别行政区对应的矢量格式数据。...import sys sys.path.append(r'所在路径') from OsmDownloader import OsmDownloader 这样才能成功导入没有在Python中注册过的独立模块
,经常会需要某个地区的道路网络及节点数据,而OpenStreetMap就是一个很好的数据来源(譬如图1柏林路网): 图1 通常我们可以在openstreetmap[2]中选择矩形区域内的路网矢量数据进行下载...譬如在geofabrik[3] 中提供了各大洲、国家等大范围的数据整合包,可以花费一定时间将其下载下来,再在需要哪些小区域时在本地GIS软件或编程工具中裁剪下所需的范围路网。...但这种方式一是对电脑资源要求较高,譬如中国范围路网信息shapefile文件大小达到了800多兆,二是OSM的路网信息不定期更新之后,要想及时跟上最新数据,就需要人工持续下载数据。...为了更加灵活自由,且即时地获取最新版本的OSM路网,我们可以利用Python来编写脚本工具,方便快捷地检索或下载OSM可以识别出的各个级别行政区对应的矢量格式数据。...OsmDownloader 这样才能成功导入没有在Python中注册过的独立模块。
3.3 在 R 中设置坐标参考系统 地球的形状可以用一个扁椭球形的模型来近似,它在赤道上隆起,在两极扁平,目前世界上有很多不同的参考椭球体来使用,最常用的是全球定位系统(GPS)所使用的世界大地测量系统...WGS84 的 EPSG 代码为 4326。 在 R 语言中,CRS 是用 proj4 字符串指定的,这些字符串指定了投影、椭球体和基准点的属性。...一个 shapefile 是由一系列相关的文件组成,这些文件有不同的拓展名,并存储在同一个目录中。...例子:用 readOGR() 读取存储在 sf 包中的北卡罗来纳州的 shapefile,如下所示: # name of the shapefile of North Carolina of the sf...包导入的北卡罗来纳州的地图可以产生如下结果: plot(map) 由 sf 包得到的美国北卡罗来纳州地图 小编有话说 本篇主要介绍:用 R 包制作地图的基础内容,包括:几种空间数据类型、不同的坐标参考系统介绍以及如何使用
上一期,对Python绘制气象实用地图做了比较详细的介绍,尽管已经能够满足部分需求了,但是,在实际的应用需求中,可能还是别的需求,那么,今天就手把手教大家如何绘制几个省份的白化等值线contour地图。...工具:Python3.6+、ArcGIS/QGIS、Shapfile、一系列相关的Python库、测试数据 第一步:制作底图 利用单独省份的Shapefile文件,制作一个shp文件包含新疆、西藏、甘肃...只不过需要提醒一下,在“Merge Shapefiles”窗口中选中之前一同导入的各省份shp文件之后,窗口会奇怪的置底,需要移开当前界面才会发现其隐藏之处,不是闪退哦!...再选定坐标系方案,最好和原来的shp文件一致。我在文末会提供相应的地图文件!...= shapefile.Reader(shpfile) vertices = [] codes = [] for shape_rec in sf.shapeRecords():
3将您自己的数据带入 Earth Engine 在本练习中,我们将讨论如何将您自己的数据移动到 GEE、从数据集中提取值以及从 GEE 中导出这些值。...要将它们带入 GEE,我们需要将它们转换为 shapefile。虽然有很多方法可以将 csv 文件转换为 shapefile,但我们将使用 R。下面的代码包含进行此转换所需的所有内容。...可以在此处找到有关如何在 R 中将 csv 文件转换为 shapefile 的详细信息。 代码的一些复杂性来自重命名列以删除“.”。为了符合 GEE 对命名约定的要求,这是必要的。...上传 shapefile:在上面的 R 代码中,我们将数据的 csv 文件转换为 shapefile,并定义坐标参考系统 (CRS) 以匹配 GEE 的预期 (WGS 1984)。...现在两个数据集都已加载,我们将把美洲狮的发生数据与天气数据相关联。 3.4提取值 加载我们的点和图像后,我们可以调用一个函数,根据美洲狮的已知位置从底层栅格中提取值。
/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 4 import shapefile 5 6 sf = shapefile.Reader("shapefile.../d_map_1000000.shp") 7 shapes = sf.shapes() # shapes方法返回描述每个形状记录的几何形状的Shape对象的列表。...45 # 字段类型:此列索引处的数据类型。类型可以是:字符,数字,长,日期或备忘。 “备忘”类型在GIS中没有意义,而是xbase规范的一部分。 46 # 字段长度:在此列索引处找到的数据的长度。...48 49 50 records1 = sf.records() # 通过调用records()方法获取shapefiles记录的列表。...shapeRecord()和shapeRecords()方法让你做到这一点。 58 # 59 # 调用shapeRecords()方法将返回所有形状的几何和属性作为ShapeRecord对象的列表。
[toc] 在R中根据shapefile进行点的抠取 当我们有一个图层文件时候,然后再放些采样点在该图层上,发现,某些采样点落在地图的外面,如下图所示。...如果用Arcgis操作,很容易把外围的点抹去,保留图层内的点,那么如果在R里面,实现该操作呢。 image.png 本篇文章,主要介绍在R中实现根据shp文件进行地图点的抠取。...数据准备 首先我们利用广西,云南为案例,随机生成一些散在的点。...(100,101,2.3), y=rnorm(100,24,2.3)) # shapefile Yun= read_sf("https://geo.datav.aliyun.com...= raster(shape, res=0.05) shape_r = rasterize(shape, r, "val") plot(shape_r) plot(shape,add=T) 参考
本期推文我们介绍一个可以绘制颇具“艺术”风格地图的可视化包-cartography,主要涉及的内容如下: R-cartography 简介 R-cartography 实例应用 R-cartography...用户可能属于以下两类之一:使用R的制图师或愿意创建地图的使用者。制图使用sf或sp对象生成基本图形。由于程序包的大多数内部结构都依赖于sf功能,因此空间对象的首选格式是sf。...(官方直译的哈) 通过介绍我们可以知道,cartography主要基于sf对象进行绘图,所以我们在绘制之前需将数据(地图数据或者点数据)转换成sf对象。...铅笔风格主题地图 R-cartography 实例应用 我们使用之前空间插值系列的数据进行不同主题地图的绘制,首先 ,我们将所使用数据转换成sf对象,代码如下: library(sf) library(...资料获取 cartography 包还提供查找表(CHEAT SHEET),大家可以从上方的官网进行获取,当然,如果由于网速问题下载不到,也可以在本号(DataCharm)回复 cartography
本篇作为postgis数据库的一个前期探索篇,主要简单分享下postgresql+postgis的环境配置,及其与R语言、Python的API接口调用,以及如何通过这些接口来将shp、json空间地理信息数据源导入...这张表整体就是我们之前在分享 R语言的sf对象和Python中的GeoDataFrame对象的技术雏形。...可以看到地理信息列在postgis中已经被编码成一组特殊数字,而在R中的sf对象中则是嵌套列表,在Python的GeoDataFrame中则是特殊的geomtry列。...2、postgis与R语言通讯: 在R语言中调用postgis库表,需要依赖以下两个包(RPostgreSQL\rpostgis): library("rpostgis") library("RPostgreSQL...() #导入数据默认为sp格式,转换为sf格式 读入方法2 map_data <- st_read(conn,"bou2_4p") ?
虽然从数据存储格式上来讲我们分为shp素材、json素材,但是由于在R语言中使用ggplot2作图,所支持的数据集对象大致又可分为两类,它们都可以由shp、json数据文件转化而来。...接下来通过案例演示来解释以上原理: 通常我们制作一个数据地图的方式如下: shapefile文件导入: setwd("D:/R/rstudy/CHN_adm") china_map<-readShapePoly...("CHN_adm1.shp") Warning message: use rgdal::readOGR or sf::st_read 当我使用sp包导入shp数据集时,R提示以上warning,也就意味着这种传统的方式在不久的将来就会被遗弃...此时按照旧方法,我需要分别提取出描述层的dataframe和几何映射层的数据框。...)+geom_ploygon() ggplot(china_map1)+geom_sf() ggplot(china_map1)+gg_map() 可以调用在线地图库素材: ggmap() leaflet
图1 原作者使用的工具是R语言,而今天的文章内容,我就将带大家学习如何在Python中模仿图1的风格进行类似数据信息的可视化展示(其实原作品有一些令人困惑的瑕疵,因此我在下文中在一些地方采用了与原作者不同的分析方式...2 模仿过程 今天我们要模仿的这张图,咋一看上去似乎略复杂,但如果你曾经阅读过我的基于geopandas的空间数据分析系列文章,就一下子可以在脑中将此图构成进行分解: 2.1 过程分解 我们仔细观察原作品...图3 接着我们在上述数据基础上对每个社区面内部的街道树木数量进行统计并对数据进行分箱,配上预设区间的色彩值: # 统计每个社区内部的树木数量 sf_trees = \ ( gpd #...并且外部字体文件的使用也是很添彩的,我们这里就分别在标题和刻度标签处使用到了两种特殊的字体(你可以在开头的Github仓库找到我用到的所有字体文件): fig, ax = plt.subplots(figsize...图5 ---- 以上就是本文的全部内容,欢迎在评论区与我进行讨论~
创作的(如图1所示)非常受欢迎的 「Street trees of San Francisco」: 图1 原作者使用的工具是R语言,而今天的文章内容,我就将带大家学习如何在Python中模仿图1的风格进行类似数据信息的可视化展示...(其实原作品有一些令人困惑的瑕疵,因此我在下文中在一些地方采用了与原作者不同的分析方式,因此最终的成品与原作品有一些不同之处)。...2 模仿过程 今天我们要模仿的这张图,咋一看上去似乎略复杂,但如果你曾经阅读过我的「基于geopandas的空间数据分析」系列文章,就一下子可以在脑中将此图构成进行分解: 2.1 过程分解 我们仔细观察原作品...: 图3 接着我们在上述数据基础上对每个社区面内部的街道树木数量进行统计并对数据进行分箱,配上预设区间的色彩值: # 统计每个社区内部的树木数量 sf_trees = \ ( gpd...并且外部字体文件的使用也是很添彩的,我们这里就分别在「标题」和「刻度标签」处使用到了两种特殊的字体(你可以在开头的Github仓库找到我用到的所有字体文件): fig, ax = plt.subplots
图1 原作者使用的工具是R语言,而今天的文章内容,我就将带大家学习如何在Python中模仿图1的风格进行类似数据信息的可视化展示(其实原作品有一些令人困惑的瑕疵,因此我在下文中在一些地方采用了与原作者不同的分析方式...2 模仿过程 今天我们要模仿的这张图,咋一看上去似乎略复杂,但如果你曾经阅读过我的「基于geopandas的空间数据分析」系列文章,就一下子可以在脑中将此图构成进行分解: 2.1 过程分解 我们仔细观察原作品...图3 接着我们在上述数据基础上对每个社区面内部的街道树木数量进行统计并对数据进行分箱,配上预设区间的色彩值: # 统计每个社区内部的树木数量 sf_trees = \ ( gpd # 空间连接...并且外部字体文件的使用也是很添彩的,我们这里就分别在「标题」和「刻度标签」处使用到了两种特殊的字体(你可以在开头的Github仓库找到我用到的所有字体文件): fig, ax = plt.subplots...图5 ---- 以上就是本文的全部内容,欢迎在评论区与我进行讨论~
这次我们将只使用3个库:httr通过GET函数检索数据;tidyverse 和 sf 用于空间分析和数据整理。...shapefile 读入 R 中,以获取要导入的文件列表。...相反,包使用 s2 库中的球面几何运算符。在我们的例子中,这会破坏代码,因为某些河流线具有无效的球形几何图形。 一个快速的解决方法是通过sf::sf_use_s2(FALSE)关闭此功能。...在本教程中,您学习了如何导入河流空间文件以及如何在 R 中制作欧洲的炫酷河流地图。随时检查完整代码这里,克隆存储库并根据需要重现、重用和修改代码。...本教程为您从 GloRiC 数据库映射其他河流网络打开了大门。事实上,你可以稍微调整一下我的代码,制作非洲,美洲或亚洲的河流地图。
以前在处理gis数据的时候,都是直接导入本地shp素材、本地geojson素材,本地topojson素材,自从接触postgis数据之后,深感使用规范的存储系统来统一管理gis数据的好处,特别是数据量大了之后...在批量导入素材之前,我们可以先看下R语言目前提供的各种导入接口在I/O性能上相比有何异同。...)) 用户 系统 流逝 0.05 0.00 0.05 可以看到在同一个shp文件单项导入的情况下,纯粹从时间上来看: sf > maptools > rgdal >...sf模型的性能由此可见一斑。 当然,以上sf包、rgdal包和sf包都是兼容性很好地包,可以支持非常广泛的数据源,以下分别是在json标准下的两种素材上进行测试。...如果你要想将sf包导入的数据模型转换为普通的数据框模式,仅仅只需使用其提供的as(sf,’Spatial’)函数一次转化即可,当然sf有自己的ggplot2通道函数geom_sf(),这意味着你不必多此一举
城市白模数据是数字孪生城市重要的基础数据组成部分。不少做数字孪生的开发者经常因为没有建筑物数据而困惑,下面列觉了四种获取建筑物白模数据的方法。...一、使用工具制作白膜数据geobuilding制作白模数据,可导出geojson shapefile osm格式https://www.bilibili.com/video/BV1PV4y1J7t7/?...spm_id_from=333.999.0.0二、爬取百度地图建筑物使用python脚本可以获取百度地图或高德地图建筑物图斑数据https://www.bilibili.com/video/BV1gV4y1r7Yr...spm_id_from=333.999.0.0三、下载已知的免费数据已知77个城市的建筑物轮廓数据,包含高度。可搜索下载。图片https://cn.bing.com/search?...spm_id_from=333.999.0.0mapflow是知名的【遥感数据识别】服务商https://mapflow.ai/
本文主要就以下几个方面:“中国区域绘图”、“包含南海”、“兰伯特投影带经纬度标签”、“基于salem的mask方法”、“进阶中国区域mask方法”、“进阶省份mask方法”。...对日常的实用需求能够在一定程度上满足。后续就Python在气象常用的统计方法(显著性检验)、合成分析、多变量叠加绘图再进行推送,敬请期待! 简单粗暴,Just show you my code!...数据、中文字体、地图shapefile文件、代码后文全部提供。...) # 设置标题的在代码中放置的位置很关键,注意不要放置在小图上或者新建画框了。...) # 设置标题的在代码中放置的位置很关键,注意不要放置在小图上或者新建画框了。
前言 读者来信 我之前是 1、先用arcgis 栅格转点 2、给点添加xy坐标 3、给添加xy坐标后的点通过空间连接的方式添加行政区属性 4、最后计算指定行政区的质心 之前的解决办法是用arcgis 完成第一步和第二步...dask的理解有问题,想要请教一下大佬 读者的问题涉及到地理信息系统(GIS)操作的一系列步骤,具体包括将栅格数据转换为点数据、为这些点数据添加XY坐标、通过空间连接给这些点添加行政区属性、以及计算指定行政区的质心...针对这个情况,我们可以从几个方面进行分析和建议: 性能瓶颈分析: ArcGIS和GeoPandas在处理大量数据时可能会遇到性能问题,特别是在普通硬件上运行时。...() 检查几何对象是否在某个多边形内 ddf.within(polygon) 此外,如果你有一个分布式的 dask.dataframe,你可以将 x-y 点的列传递给 set_geometry 方法来设置几何形状...你可能需要实验不同的npartitions值来找到最佳平衡。 检查最终保存步骤 在保存结果时,如果尝试将整个处理后的数据集写入单个文件,这可能也会导致内存问题。
领取专属 10元无门槛券
手把手带您无忧上云