描述
表示栅格拉伸着色器。
讨论
栅格拉伸着色器沿色带拉伸值。这些属性的行为类似于应用程序中显示的选项。例如,更改 StretchType 将控制可以修改的附加参数子集。
属性
属性 | 说明 | 数据类型 |
band (可读写) | 一个整数,表示与波段在符号系统窗格中显示顺序相符的从零开始的索引。最顶部的波段为索引 0,最底部的波段为索引 n-1。 | Integer |
colorRamp (可读写) | 提供对 ColorRamp 对象的访问权限。 | ColorRamp |
gamma (可读写) | 一个双精度值,表示 gamma 值。 | Double |
invertColorRamp (可读写) | 一个布尔值,用于反转色带的外观。 | Boolean |
maxLabel (可读写) | 一个字符串,表示显示在内容窗格或图例中的栅格拉伸最大标注。 | String |
maxPercent (可读写) | 一个双精度值,表示要从源数据中剪切的最高百分比值。仅当将 StretchType 设置为 MinimumMaximum 时才会应用此参数。 | Double |
minLabel (可读写) | 一个字符串,表示显示在内容窗格或图例中的栅格拉伸最小标注。 | String |
minPercent (可读写) | 一个双精度值,表示要从源数据中剪切的最低百分比值。仅当将 StretchType 设置为 MinimumMaximum 时才会应用此参数。 | Double |
standardDeviation (可读写) | 一个双精度值,表示标准差值。仅当将 StretchType 设置为 StandardDeviation 时才会应用此参数。 | Double |
stretchType (可读写) | 一个字符串,表示有效的拉伸算法。有效值如下:
| String |
type (只读) | 返回表示着色器类型的字符串。 | String |
代码示例
以下脚本首先测试图层的符号系统是否支持 colorizer 属性,然后确认渲染器是否为 RasterStretchColorizer。接下来,该脚本会将 stretchType 更改为 PercentClip 并设置适当的最小/最大百分比。最后,将 ColorRamp 更改为名为 Bathymetry #2 的色带。
p = arcpy.mp.ArcGISProject('current')
m = p.listMaps('RasterStretch')[0]
for l in m.listLayers():
if l.isRasterLayer:
sym = l.symbology
if hasattr(sym, 'colorizer'):
if sym.colorizer.type == 'RasterStretchColorizer':
#Set StretchType = PercentClip
if l.name == "Photo_SE":
sym.colorizer.stretchType = "PercentClip"
sym.colorizer.minPercent = 1.0
sym.colorizer.maxPercent = 1.0
cr = p.listColorRamps('Bathymetry #2')[0]
sym.colorizer.colorRamp = cr
sym.colorizer.invertColorRamp = True
sym.colorizer.gamma = 2
sym.colorizer.minLabel = "Min: " + sym.colorizer.minLabel
sym.colorizer.maxLabel = "Max: " + sym.colorizer.maxLabel
l.symbology = sym