Questions tagged «attribute-table»

一组表格式的数据一对一链接到一组空间要素。


2
Python,GDAL和构建栅格属性表
我有一个整数栅格,我想使用Python和GDAL为其构建栅格属性表。我可以在Python中创建GDAL栅格属性表,如下所示: >>> rat = gdal.RasterAttributeTable() 如我们所见,这很好用: >>> rat <osgeo.gdal.RasterAttributeTable; proxy of <Swig Object of type 'GDALRasterAttributeTableShadow *' at 0x0000000002A53D50> > 这样创建的表没有行或列: >>> rat.GetRowCount() 0 >>> rat.GetColumnCount() 0 我创建了一个名为“值”的列,以将唯一值存储在栅格中: >>> rat.CreateColumn("Value", gdalconst.GFT_Integer, gdalconst.GFU_MinMax) 0 很好,并且列数已更新: >>> rat.GetColumnCount() 1 现在,我必须将值(记录)添加到该列中才能使用。我可以从栅格波段中获得唯一值的列表,如下所示: >>> data = band.ReadAsArray(0, 0, dataset.RasterXSize, dataset.RasterYSize) >>> vals = list(numpy.unique(data)) >>> …



2
重叠点的标签可以合并/合并为一个标签吗?
我有代表样本位置的点。通常,多个样本将在同一位置获取:具有相同位置但具有不同样本ID和其他属性的多个点。我想用一个标签标记所有位于同一位置的点,并用堆叠文本列出该点所有点的所有示例ID。 在ArcGIS中使用常规标签引擎或Maplex可以做到吗?我知道可以通过在一个属性值中为每个位置创建一个包含所有样本ID的新层来解决此问题,但我想避免创建仅用于标记的新数据。 基本上我想从这里开始: 为此(最重要的一点): 无需对标签进行任何手动编辑。

1
用Python修改属性表的最快方法?
不久前,我编写了一个快速的Python函数,用于将属性表转换为python字典,其中的键来自用户指定的唯一ID字段(通常是OID字段)。另外,默认情况下,所有字段都复制到字典中,但是我包含了一个参数,只允许指定一个子集。 def make_attribute_dict(fc, key_field, attr_list=['*']): dict = {} fc_field_objects = arcpy.ListFields(fc) fc_fields = [field.name for field in fc_field_objects if field.type != 'Geometry'] if attr_list == ['*']: valid_fields = fc_fields else: valid_fields = [field for field in attr_list if field in fc_fields] if key_field not in valid_fields: cursor_fields = valid_fields + …

7
QGIS在KML文件中导出属性
这是我在做什么: 通过将shapefile上传到QGIS中来创建图层 选择该文件的属性 保存文件时,使用“仅保存所选功能”复选框导出所选属性 我需要导出与每个多边形相对应的名称。不幸的是,当我另存为KML文件并在“ Google我的地图”中打开时,我只能看到多边形边界,因此需要命名它们。该信息位于属性表的列中。

1
如何立即自动填充字段?
我正在尝试创建一个属性表,其中的第一个字段是一个下拉菜单(我已经通过使用“值图”编辑小部件实现了此目的),但是我正努力寻找下一部分的方法。 从下拉菜单中选择值之后,我希望根据下拉菜单中的值自动填充相邻的单元格(在下一个字段中)。例如 如果下拉值= A,则相邻字段= 1;或者,如果下拉值= B,则相邻字段值= 3,依此类推。 我意识到,通过使用字段计算器,可以将字段自动填充为一个单独的过程的一部分,但是我希望在选择下拉值的同时,同时填充字段。 我正在使用Windows 7和QGIS版本1.8。 非常感谢。

4
使用ArcPy而不是ArcObjects刷新ArcMap中的开放属性表?
我正在从ArcMap中的arcpy运行“计算字段GP”工具。更新行值后,直到我使用“重新加载缓存”工具(“表选项”>“重新加载缓存”)后,它才会显示。如何在不使用ArcObjects的情况下自动刷新属性表? 我已尝试按照@ blah238建议使用python更新定义查询,您如何“重新加载”打开的属性表,但这无济于事。重置数据源不是一种选择,因为要素类可能正在编辑会话中,并且我不想失去与源数据的连接。

3
在不丢失ArcGIS for Desktop中原始字段名称的情况下联接表?
我想知道加入csv时是否有任何方法可以在ArcGIS中保留原始字段名称。表到Shapefile。 我问,因为有时我联接具有10、20甚至更多列的表,并且在导出联接的数据时, ArcGIS总是根据原始表的名称和列的顺序(例如table_xy_1,table_xy_2等)对它们进行重命名。 由于没有简单的方法可以永久地重命名属性表中的字段(即,您必须创建一个新列并将旧列复制到该新列中并删除旧列),这会产生大量工作(尽管事实如此)您必须将自己定位在这种混乱的字段名称中)。

1
如何强制ArcGIS识别CSV文件中的文本字段?
与ArcGIS表加载中的数据类型检测有关 我有一个包含数字和文本字段混合的CSV文件: ID,Txt,Int,Dbl 12345,abc,45,56.78 12346,9,65,23.12 12347,10,66,23.13 根据此Esri文章,如果前8行包含文本值,则该字段将被分类为文本,但是我发现第二个字段被分类为Long。这意味着将省略值“ abc”: 我如何强制ArcGIS将其识别为文本字段,同时将数据保持为CSV格式? 一种解决方法是创建地理数据库表,将字段定义为文本,然后加载数据,但是我希望将表保留为CSV(这是另一个过程的输出)。 谢谢



2
QGIS字段计算器中的列标题使用通配符?
我知道您可以在字段计算器中使用通配符(在字段计算器中): case when "column" ILIKE '%example%' then 1 else 0 end 您可以为列标题本身做类似的事情吗? 我之所以这样问,是因为我要联接多个图层(使用Joins属性),这将使我更容易编辑一组过滤器,而不是编辑多个过滤器,因为列名必须包含联接的图层名称。 我正在使用QGIS 2.2。


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.