Доступно с лицензией Spatial Analyst.
Краткая информация
Задает функцию преобразования Logistic Growth, которая определяется по контролирующим форму параметрам minimum, maximum и процент отрезка по y, а также по верхнему и нижнему порогам, задающим диапазон, в котором применяется функция.
Более подробно о влиянии параметров на эту функцию преобразования
Обсуждение
Инструмент, который использует объект TfLogisticGrowth, – это Пересчет по функции (Rescale by Function).
Диапазон значений функции варьирует от 0 до 100, которые затем преобразуется к оценочной шкале.
Если параметр minimum больше, чем lowerThreshold или maximum меньше upperThreshold, кривая функции будет быстро подниматься. Если параметр minimum меньше, чем lowerThreshold или maximum больше upperThreshold, кривая функции будет подниматься медленно.
Синтаксис
TfLogisticGrowth ({minimum}, {maximum}, {yInterceptPercent}, {lowerThreshold}, {valueBelowThreshold}, {upperThreshold}, {valueAboveThreshold})
Параметр | Объяснение | Тип данных |
minimum |
Начальная точка для функция преобразования LogisticGrowth. Минимум должен быть меньше максимума. (Значение по умолчанию — None) | Double |
maximum | Конечная точка для функции преобразования LogisticGrowth. Минимум должен быть меньше максимума. (Значение по умолчанию — None) | Double |
yInterceptPercent | Определяет диапазон значений в возрастающей части кривой логистического роста (logistic growth). Чем меньше значение yInterceptPercent, тем меньше будет диапазон входных значений в возрастающей части кривой; однако предпочтение значений будет увеличиваться быстрее. Меньшее значение yInterceptPercent приведет к созданию более выраженной кривой логистического роста. Значение yInterceptPercent должно быть между 0 и 50. (Значение по умолчанию — 1.0) | Double |
lowerThreshold | Задает начальное значение, к которому начинает применяться указанная функция преобразования. Входное значение, соответствующее lowerThreshold, присваивается шкале оценки fromScale в выходном растре. Входные значения меньшее lowerThreshold присваиваются значению valueBelowThreshold и не рассматриваются в диапазоне значений функции. Значение lowerThreshold должно быть меньше, чем upperThreshold. (Значение по умолчанию — None) | Double |
valueBelowThreshold | Указываемое пользователем значение, которое будет присвоено ячейкам, чьи значения ниже lowerThreshold. Значение valueBelowThreshold может быть числом с плавающей точкой, целым числом или NoData. В диалоговом окне инструмента вокруг NoData не используются кавычки; однако в скрипте необходимо указывать "NoData" (с кавычками). (Значение по умолчанию — None) | Variant |
upperThreshold | Задает конечное значение,на котором заканчивается применение указанной функции преобразования. Входное значение, соответствующее upperThreshold, присваивается шкале оценки toScale в выходном растре. Входные значения выше upperThreshold присваиваются значению valueAboveThreshold и не рассматриваются в диапазоне значений функции. Значение lowerThreshold должно быть меньше, чем upperThreshold. (Значение по умолчанию — None) | Double |
valueAboveThreshold | Указываемое пользователем значение, которое будет присвоено ячейкам, чьи значения выше upperThreshold. Значение valueAboveThreshold может быть числом с плавающей точкой, целым числом или NoData. В диалоговом окне инструмента вокруг NoData не используются кавычки; однако в скрипте необходимо указывать "NoData" (с кавычками). (Значение по умолчанию — None) | Variant |
Свойства
Свойство | Объяснение | Тип данных |
minimum (чтение и запись) | Значение minimum для функции преобразования, задающее начальную точку для функции. | Double |
maximum (чтение и запись) | Значение maximum для функции преобразования, задающее конечную точку для функции. | Double |
yInterceptPercent (чтение и запись) | Значение yInterceptPercent для функции преобразования, которое определяет диапазон значений в увеличивающейся части логарифмической кривой возрастания. | Double |
lowerThreshold (чтение и запись) |
Значение lowerThreshold для функция преобразования, задающее начальное значение, к которому начинает применяться функция преобразования. | Double |
valueBelowThreshold (чтение и запись) |
Значение, которое будет присвоено ячейкам выходного растра, чьи значения ниже lowerThreshold. | Variant |
upperThreshold (чтение и запись) |
Значение upperThreshold для функция преобразования, задающее конечное значение, к которому начинает применяться функция преобразования. | Double |
valueAboveThreshold (чтение и запись) | Значение, которое будет присвоено ячейкам выходного растра, чьи значения превышают upperThreshold. | Variant |
Пример кода
Функция преобразования LogisticGrowth, пример 1 (окно Python)
Иллюстрирует создание класса TfLogisticGrowth и его использование в инструменте RescaleByFunction в окне Python.
import arcpy
from arcpy.sa import *
from arcpy import env
env.workspace = "c:/sapyexamples/data"
outRescale = RescaleByFunction("biomass", TfLogisticGrowth(30, 412000, 15, "#", "#", "#", "#"), 1, 10)
outRescale.save("c:/sapyexamples/rescaletflg1")
Функция преобразования LogisticGrowth, пример 2 (автономный скрипт)
Иллюстрирует преобразование входных данных с помощью инструмента RescaleByFunction, использующего класс TfLogisticGrowth.
# Name: TfLogisticGrowth_Ex_02.py
# Description: Rescales input raster data using a LogisticGrowth function and
# transforms the function values onto a specified evaluation scale.
# Requirements: Spatial Analyst Extension
# Author: esri
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster = "biomass"
# Create the TfLogisticGrowth object
minimum = 30
maximum = 412000
yintercept = 15
lowerthresh = "#"
valbelowthresh = "#"
upperthresh = "#"
valabovethresh = "#"
myTfFunction = TfLogisticGrowth(minimum, maximum, yintercept, lowerthresh, valbelowthresh, upperthresh, valabovethresh)
# Set evaluation scale
fromscale = 1
toscale = 10
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute RescaleByFunction
outRescale = RescaleByFunction(inRaster, myTfFunction, fromscale, toscale)
# Save the output
outRescale.save("c:/sapyexamples/rescaletflg2")