地理信息系统

制图师,地理学家和GIS专业人员的问答

3
如何在字段计算器中使用替换字符串功能?
在属性表中,我试图使用'replace'函数将一个字符串替换为另一个字符串。例如,有许多功能,其“名称”字段包含字符串“(B)”,而我想将其替换为“县”一词。我正在选择“更新现有字段”复选框,并使用以下表达式 replace( '(B)','(B)','County') 最终结果是,不管字段“ NAME”最初是否包含字符串“(B)”,每个功能的“ NAME”字段都由“ County”替换。任何帮助,将不胜感激。

2
使用QGIS和环境变量的独立应用程序
我已经尝试过通过IRC来查看人们是否可以帮助我解决这个问题,但是该媒介似乎对于弄清任何答案都有些笨拙,因此我将尝试使用它。 我想使用已经可以使用ArcPy对独立应用程序进行编程的方式,使用PyQGIS对独立应用程序进行编程。 PyQGIS本身很简单。我在使用QGIS控制台编辑器中运行Python脚本时没有遇到困难。但是,为了在独立脚本中使用Python绑定,建议我必须使用批处理脚本更改环境设置(我在家中使用Windows Vista,因此我们正在讨论Windows的批处理脚本)。这最终导致一团糟,因为我不太了解批处理脚本,而且我不喜欢这样的想法,即我正在重置一种环境,该环境必须以某种方式运行我的其他应用程序。 我很难理解为什么创建这些设置的指令如此不必要地复杂,以及为什么它们不等于一行代码说“转到绑定位置,使我想要的库可供该程序使用” )。当然,ArcPy不需要人们去弄乱计算机的环境设置,所以我很难理解PyQGIS的原因,在我看来,人们只会放弃而不是自学Windows批处理脚本语言。 现在,我注意到当我在QGIS的控制台编辑器中运行脚本时,它可以工作。当然,在脚本运行后,它也会使其余QGIS无法使用,因此我必须在此后再次重新启动QGIS,但是该脚本的工作方式与我编程的完全相同。但是,当我在QGIS应用程序之外执行此操作时,事实并非如此。问题似乎不是我未能导入由QGIS应用程序自动导入的某些Python软件包(qgis.core和qgis.utils)-我的独立脚本中包含了这些import语句,以及所有其他软件包都导入了脚本要求。这使我相信,不同之处在于QGIS应用程序正确设置了外部环境变量,但是当我将其作为独立脚本运行时,这些变量没有正确设置。 另外,当我将脚本作为独立脚本运行时,它可以遍历所有代码而不会引发错误。它根本不执行代码命令。当我在控制台编辑器中运行脚本时,它可以正确完成所有操作。当我独立运行它时,它将创建一个窗口,然后立即销毁它,而不会引发任何错误。因此,解释员理解我要脚本执行的所有操作-它只是不会执行。 这是脚本: from PyQt4 import * from PyQt4 import * from PyQt4.QtCore import * from PyQt4.QtGui import * from qgis.core import * from qgis.gui import * from qgis.utils import * import Tkinter from Tkinter import * import sys import os qgishome = "c:/OSGeo4W/apps/qgis/" …
12 qgis  pyqgis 

2
将样式从QGIS传输到ArcGIS Desktop?
我们有一个QGIS项目,其中有许多不同行的符号。数据来自QGIS和ArcGIS均可访问的地理数据库。 现在,我们要使用QGIS项目的符号系统来对ArcGIS地图文档中的要素进行样式设置。 我的第一种方法是使用SLD。可以轻松地将QGIS样式导出到SLD,但是如何使用ArcGIS Desktop根据SLD对要素进行样式设置? 设置简单的WMS是不够的,QGIS和ArcGIS Desktop都需要在功能上进行编辑。 如果可以为SLD提供WFS(以Esri可读的方式),那也是有可能的。也没有找到任何东西。



6
由于没有数据像素,无法对栅格求和
我有一组包含每日土壤湿度数据的栅格(.vrt)。我想对所有栅格的像素求和,以便按月进行度量。但是,每天都没有覆盖整个世界,这导致在前几天存在度量的地方没有数据值。 我想做的是对每个栅格的值求和。但是,似乎每当无数据像素合计时,结果像素就被直接分类为无数据。我想相反:忽略所有nodata值并求和其余值。 我想到了两种解决问题的方法: 汇总栅格而忽略nodata值 将无数据像素转换为值0,然后将所有栅格相加 不幸的是,我找不到任何工具可以做到这一点。 谁能帮我?
12 raster  gdal  qgis-2 

2
从shapefile MultiPolygons创建匀称的MultiPolygons
我正在使用Fiona读取shapefile: with fiona.open('data/boroughs/boroughs_n.shp') as source: mpolys = [p for p in source] candidate = polys[0]['geometry'] 这给了我一个包含坐标列表列表的字典,并键入“ MultiPolygon”。但是,我不确定如何使用坐标数据来创建Shapely MultiPolygon,因为它需要 a sequence of exterior ring and hole list tuples: [((a1, ..., aM), [(b1, ..., bN), ...]), ...]. 有没有使用Fiona和Shapely的“正确”方法?
12 python  shapely  fiona 

3
使用ArcGIS Desktop合并相邻的多边形?
我想使用ArcGIS Desktop将彼此相邻的多边形合并。 多边形之间没有公共字段,因此“溶解”工具不是理想的解决方案。我要合并在一起的多边形彼此相邻或在一定距离内。 我想避免使用ArcObjects。但是,欢迎使用Python脚本。 当要溶解的属性被忽略时(禁用创建多部分),“溶解”工具会合并相邻的多边形。但是,它没有空间公差的设置。此外,dissolve不适用于只有一个共同顶点的多边形。 我已经用答案之一中提到的集成工具尝试了这种方法。问题在于,通过整合多个要素而创建的最终要素的形状与如果要素之间的边界被消除而形成的形状不同。

2
从3维几何转换为2维
我有一个Point表,其中的几何列同时包含3维和2维值。我想将此3维几何转换为2维.PostGIS中是否有任何功能?请帮我解决这个问题。 关于Sreesha.TA



3
使用自己的底图和ArcGIS API for Java?
我正在尝试使用Javascript API制作地图。 我想使用自己的底图,但是找不到最简单的代码来做到这一点。 我总是看到这样的东西: function init() { map = new esri.Map("mapDiv", { basemap: "satellite", center: [-97.395, 37.537], zoom: 11 }); 但是我不想使用ArcGIS在线底图。 用于托管我的底图的地图服务的代码是什么?

2
为什么ArcPy脚本运行缓慢?
我有一个简单的arcpy脚本,可使用其内的多边形要素中的信息来更新点shapefile中的字段。在arcpy中完成100点需要9分钟,但是arcmap中的空间连接是瞬时的。我敢肯定有一个快速建立的方法可以解决这个问题。有人可以指出我正确的方向吗? import took 0:00:07.085000 extent took 0:00:05.991000 one pt loop took 0:00:03.780000 one pt loop took 0:00:03.850000 one pt loop took 0:00:03.791000 import datetime t1 = datetime.datetime.now() import arcpy t2 = datetime.datetime.now() print "import took %s" % ( t2-t1) #set up environment arcpy.env.workspace = "data\\" arcpy.env.overwriteOutput = True desc = …

2
使用ArcGIS for Desktop查找shapefile之间的差异?
每个月我都要对整个县的一些街道数据进行质量检查/质量控制(超过47,000条记录)。第一步是比较两个文件。目前,我使用的是大约5年前通过VBA在内部创建的工具。它可以比较两个文件,并根据一些因素(添加记录,删除记录,地址更改,城市更改,段长度/顶点更改)报告差异。然后,将它们导出到单独的shapefile。此外,该工具可以使用,ArcGIS 9.3但将不再使用ArcGIS 10.1 该工具效果很好,但大约需要一个小时才能完成。 我已经开始着手希望改进此工具以提高性能。我研究了各种方法,包括Compare Feature Tool和Select by Location。 这两个工具的工作速度都显着提高,但是,它们似乎无法捕获我所需的一切。我的最大问题Compare Feature Tool是我无法选择要比较的字段。当我需要按Segment_ID进行比较时,它默认为ObjectID。没有选择的选项。 是否有人对如何实现我所描述的全面比较有一个好的解决方案或想法? 出于某种原因,ArcGIS无法识别我根据RyanDalton的回答正在尝试的联接。 但 采取联接的建议,我已经找到了如何通过以下方法在两个文件中查找添加的记录和删除的记录的区别: 通过Segment_ID字段将上个月的shapefile连接到本月的shapefile 执行定义查询,其中Segment_ID为NULL 将其导出到新的shapefile(添加的功能) 然后,我反向联接并找到“已删除的特征” 仍在寻找找到列出的其他差异,然后将它们全部组合到模型中的方法。 通过从与另一个数据集相同的一个数据集中执行按位置记录的选择,可以找到所有已更改的记录。然后,我切换选择,它给了我所有不相同的记录。 我将其全部放入模型中,并希望它也能正常工作。

1
Google静态地图图块的角坐标
如何计算通过http://maps.googleapis.com/maps/api/staticmap获取的静态Google Map图像的角坐标(边界框)?center = 40.714728,-73.998672&zoom = 12&size = 400x400&sensor = false?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.