FuzzyLinear (arcpy.sa)

摘要

Defines a fuzzy membership function through a linear transformation between the user-specified minimum value, a membership of 0, to the user-defined maximum value, which is assigned a membership of 1.

讨论

The tool that uses the FuzzyLinear object: Fuzzy Membership.

The Linear function is useful when the smaller values linearly increase in membership to the larger values for a positive slope and opposite for a negative slope.

The Linear function does not work with negative numbers.

FuzzyLinear graph
Variations of the fuzzy Linear membership function.

语法

FuzzyLinear (minimum, maximum)
参数说明数据类型
minimum

The value that will have a membership of 0. If the minimum value is less than the maximum, the linear function will have a positive slope. If the minimum value is greater than the maximum, the linear function will have a negative slope.

(默认值为 Minimum of the input)

Double
maximum

The value that will have a membership of 1. If the maximum value is greater than the minimum, the linear function will have a positive slope. If the maximum value is less than the minimum, the linear function will have a negative slope.

(默认值为 Maximum of the input)

Double

属性

属性说明数据类型
minimum
(读写)

The value that will have a membership of 0. If the minimum value is less than the maximum, the linear function will have a positive slope. If the minimum value is greater than the maximum, the slope will have a negative slope.

Double
maximum
(读写)

The value that will have a membership of 1. If the maximum value is greater than the minimum, the linear function will have a positive slope. If the maximum value is less than the minimum, the slope will have a negative slope.

Double

代码实例

FuzzyLinear example 1 (Python window)

Demonstrates how to create a FuzzyLinear class and use it in the FuzzyMembership tool within the Python window.

import arcpy
from arcpy.sa import *
from arcpy import env
env.workspace = "c:/sapyexamples/data"
outFzyMember = FuzzyMembership("as_std", FuzzyLinear(12, 16))
outFzyMember.save("c:/sapyexamples/fzyline")
FuzzyLinear example 2 (stand-alone script)

Performs a FuzzyMembership using the FuzzyLinear class.

# Name: FuzzyLinear_Ex_02.py
# Description: Scales input raster data into values ranging from zero to one
#     indicating the strength of a membership in a set. 
# Requirements: Spatial Analyst Extension

# 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 = "as_std"

# Create the FuzzyLinear algorithm object
min = 19
max = 22
myFuzzyAlgorithm = FuzzyLinear(min, max)

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute FuzzyMembership
outFuzzyMember = FuzzyMembership(inRaster, myFuzzyAlgorithm)

# Save the output
outFuzzyMember.save("c:/sapyexamples/fzyline2")

相关主题

9/15/2013