Проблема создания таблицы атрибутов растра в ArcGIS - PullRequest
3 голосов
/ 10 сентября 2010

У меня есть скрипт Python, который создает таблицу атрибутов растра. Он пробегает все мои растры, которые у меня есть, с плавающей точкой, преобразует их в целые, затем создает таблицу атрибутов.

На первых 3 растрах я получаю предупреждение

Value range for c:\raster2 exceeds 100000 and number of unique values exceeds 500.
Please use BUILDVAT if a VAT is required.

но таблица атрибутов генерируется. Однако после этого происходит сбой программы, и я не знаю, как это исправить. Это сообщение об ошибке выводится на экран:

Value range for c:\raster2 exceeds 100000 and number of unique values exceeds 500.
Please use BUILDVAT if a VAT is required.
Traceback (most recent call last):
  File "LEED_raster_attribute.py", line 50, in <module>
    make_attribute( 20, 'C:\\Analysis\\Raster_Distances\\city' )
  File "Raster_attribute.py", line 40, in make_attribute
    gp.BuildRasterAttributeTable_management(outRaster)
arcgisscripting.ExecuteError: ERROR 000521: The number of unique values exceeds the limit.
Failed to execute (BuildRasterAttributeTable).

Поиск сообщения об ошибке не помогает, равно как и файлы справки. Есть ли решения этой проблемы?

Спасибо.

Ответы [ 2 ]

1 голос
/ 10 сентября 2010

Для сеток таблица атрибутов растра создается по умолчанию для любой целочисленной сетки, которая получается из выражения, если диапазон значений в растре меньше 100 000 или если число уникальных значений в растре меньшечем 500. Если диапазон меньше 100 000, количество уникальных значений в растре может достигать 100 000.Если диапазон больше 100 000, таблица атрибутов растра все равно будет построена, если число уникальных значений меньше 500. Если диапазон значений больше 100 000, а количество уникальных значений больше 500, то растртаблица атрибутов не создается автоматически.По умолчанию размер таблицы атрибутов растра ограничен 65 535 уникальными значениями.Вы можете увеличить это число в диалоговом окне «Параметры», щелкнув вкладку «Таблица атрибутов растра» на вкладке «Растр».

Я просто перечитал растровую документацию и можно вручную увеличить значение,позволяет создавать таблицы атрибутов с использованием графического интерфейса.Я вручную ввел огромное значение, и мой сценарий сработал.


Не уверен, что этот вопрос / ответ полезен.Я оставлю это здесь на день или два и посмотрю.

0 голосов
/ 28 января 2014

Предупреждение:

Диапазон значений для c: \ raster2 превышает 100000 и число уникальных значений превышает 500. Пожалуйста, используйте BUILDVAT, если требуется НДС.

... создается на шаге, предшествующем принудительному созданию таблицы атрибутов. Из-за отсутствия контекста я не могу уточнить это для вашего конкретного случая; однако в моей ситуации я преобразую класс пространственных объектов полигона в растр, используя arcpy.PolygonToRaster_conversion. Здесь генерируется предупреждение 010367 . Если впоследствии вы используете arcpy.BuildRasterAttributeTable_management в растре, вы можете просто проигнорировать приведенное выше предупреждение.

Не видя дополнительного контента из вашего скрипта, я не могу исправить вашу вторую ошибку.

...