matplotlib.colors.LightSource

class matplotlib.colors.LightSource(azdeg=315, altdeg=45, hsv_min_val=0, hsv_max_val=1, hsv_min_sat=1, hsv_max_sat=0)[源代码]

基类:object

从指定的方位角和高度创建光源。角度以度为单位,方位角从北顺时针测量,从地面零平面向上测量。

shade 用于为数据数组生成“着色”的RGB值。 shade_rgb 可用于将rgb图像与立面图组合。 hillshade 生成曲面的照明贴图。

指定光源的方位角(从南方顺时针测量)和高度(从表面平面向上测量),单位为度。

参数:
azdeg浮动,默认值:315度(从西北)

光源的方位角(0-360度,从北顺时针)。

altdeg浮动,默认值:45度

光源的高度(从水平向上0-90度)。

笔记

为了向后兼容,参数 hsv_min_valhsv_max_valhsv_min_sathsv_max_sat 也可以在初始化时提供。但是,这些参数仅在“混合模式='hsv'”传递到 shadeshade_rgb . 参见文档 blend_hsv 了解更多详细信息。

__dict__ = mappingproxy({'__module__': 'matplotlib.colors', '__doc__': '\n Create a light source coming from the specified azimuth and elevation.\n Angles are in degrees, with the azimuth measured\n clockwise from north and elevation up from the zero plane of the surface.\n\n `shade` is used to produce "shaded" rgb values for a data array.\n `shade_rgb` can be used to combine an rgb image with an elevation map.\n `hillshade` produces an illumination map of a surface.\n ', '__init__': <function LightSource.__init__>, 'direction': <property object>, 'hillshade': <function LightSource.hillshade>, 'shade_normals': <function LightSource.shade_normals>, 'shade': <function LightSource.shade>, 'shade_rgb': <function LightSource.shade_rgb>, 'blend_hsv': <function LightSource.blend_hsv>, 'blend_soft_light': <function LightSource.blend_soft_light>, 'blend_overlay': <function LightSource.blend_overlay>, '__dict__': <attribute '__dict__' of 'LightSource' objects>, '__weakref__': <attribute '__weakref__' of 'LightSource' objects>, '__annotations__': {}})
__init__(azdeg=315, altdeg=45, hsv_min_val=0, hsv_max_val=1, hsv_min_sat=1, hsv_max_sat=0)[源代码]

指定光源的方位角(从南方顺时针测量)和高度(从表面平面向上测量),单位为度。

参数:
azdeg浮动,默认值:315度(从西北)

光源的方位角(0-360度,从北顺时针)。

altdeg浮动,默认值:45度

光源的高度(从水平向上0-90度)。

笔记

为了向后兼容,参数 hsv_min_valhsv_max_valhsv_min_sathsv_max_sat 也可以在初始化时提供。但是,这些参数仅在“混合模式='hsv'”传递到 shadeshade_rgb . 参见文档 blend_hsv 了解更多详细信息。

__module__ = 'matplotlib.colors'
__weakref__

对象的弱引用列表(如果已定义)

blend_hsv(rgb, intensity, hsv_max_sat=None, hsv_max_val=None, hsv_min_val=None, hsv_min_sat=None)[源代码]

取输入数据数组,在给定的颜色映射中转换为hsv值,然后调整这些颜色值,以获得具有指定光源的着色地形图的效果。返回rgba值,该值随后可用于用imshow绘制着色图像。

在着色区域中,通过将(s,v)值(在hsv颜色空间中)向(hsv_min_sat,hsv_min_val)移动,或在照亮的区域中,通过向(hsv_max_sat,hsv_max_val)滑动(s,v)使结果图像的颜色变暗。选择默认的极值,以便完全着色的点接近黑色(s=1,v=0),完全照明的点接近白色(s=0,v=1)。

参数:
rgb恩达雷

从0到1(彩色图像)范围内的浮点的MXNX3 RGB数组。

intensity恩达雷

从0到1(灰度图像)范围内的浮点的MXNX1数组。

hsv_max_sat数字,默认值:1

最大饱和值 强度 map可以将输出图像移动到。

hsv_min_sat数字,可选

最小饱和值 强度 map可以将输出图像移到。默认值为0。

hsv_max_val数字,可选

最大值(“v”in“hsv”)表示 强度 map可以将输出图像移到。默认值为1。

hsv_min_val数字,可选

最小值(“v”in“hsv”)表示 强度 map可以将输出图像移到。默认值为0。

返回:
恩达雷

表示组合图像的MXNX3 RGB数组。

blend_overlay(rgb, intensity)[源代码]

使用“覆盖”混合将RGB图像与强度贴图组合在一起。

参数:
rgb恩达雷

从0到1(彩色图像)范围内的浮点的MXNX3 RGB数组。

intensity恩达雷

从0到1(灰度图像)范围内的浮点的MXNX1数组。

返回:
恩达雷

表示组合图像的MXNX3 RGB数组。

blend_soft_light(rgb, intensity)[源代码]

使用“pegtop”公式,使用“柔和灯光”混合,将rgb图像与强度贴图结合。

参数:
rgb恩达雷

从0到1(彩色图像)范围内的浮点的MXNX3 RGB数组。

intensity恩达雷

从0到1(灰度图像)范围内的浮点的MXNX1数组。

返回:
恩达雷

表示组合图像的MXNX3 RGB数组。

property direction

朝向光源的单位矢量方向。

hillshade(elevation, vert_exag=1, dx=1, dy=1, fraction=1.0)[源代码]

使用为光源定义的方位角和仰角计算曲面的照明强度。

这将计算曲面的法向量,然后将它们传递给 shade_normals

参数:
elevation类数组

用于生成照明地图的高度值的二维数组(或等效值)

vert_exag数字,可选

计算照明时放大高程值的量。这可用于校正x-y坐标系和高程坐标系之间的单位差异(例如十进制度数与米),也可用于夸大或淡化地形影响。

dx数字,可选

输入的X间距(列) 高程 网格。

dy数字,可选

输入的Y间距(行) 高程 网格。

fraction数字,可选

增加或减少山阴的对比度。大于1的值将导致中间值移近完全照明或阴影(并剪切任何超过0或1的值)。请注意,这在视觉或数学上与垂直夸张不同。

返回:
恩达雷

介于0-1之间的二维照明值数组,其中0完全处于阴影中,1完全亮起。

shade(data, cmap, norm=None, blend_mode='overlay', vmin=None, vmax=None, vert_exag=1, dx=1, dy=1, fraction=1, **kwargs)[源代码]

将颜色映射的数据值与照明强度映射(也称为“hillshade”)的值组合在一起。

参数:
data类数组

用于生成着色贴图的高度值的二维数组(或等效值)。

cmapColormap色图

用于为 data 数组。注意这必须是 Colormap 实例。例如,而不是通过 cmap='gist_earth' 使用 cmap=plt.get_cmap('gist_earth') 相反。

normNormalize 实例,可选规范化实例,可选

用于在颜色映射之前缩放值的规范化。如果没有,输入将在其最小值和最大值之间线性缩放。

blend_mode'hsv'、'overlay'、'soft'或Callable,可选

用于将颜色映射数据值与照明强度组合的混合类型。默认为“覆盖”。请注意,对于大多数地形表面,“覆盖”或“软”看起来更逼真。如果提供了用户定义函数,则需要将浮动的MXNX3 RGB数组(范围为0到1)与MXNX1 Hillshade数组(也为0到1)组合在一起。(呼叫签名) func(rgb, illum, **kwargs) )提供给此函数的其他Kwarg将传递给 blend_mode 功能。

vmin浮动或无,可选

颜色映射中使用的最小值 data .如果 None 最小值 data 使用。如果 norm 如果指定了,则将忽略此参数。

vmax浮动或无,可选

颜色映射中使用的最大值 data .如果 None 中的最大值 data 使用。如果 norm 如果指定了,则将忽略此参数。

vert_exag数字,可选

计算照明时放大高程值的量。这可用于校正x-y坐标系和高程坐标系之间的单位差异(例如十进制度数与米),也可用于夸大或淡化地形。

dx数字,可选

输入的X间距(列) 高程 网格。

dy数字,可选

输入的Y间距(行) 高程 网格。

fraction数字,可选

增加或减少山阴的对比度。大于1的值将导致中间值移近完全照明或阴影(并剪切任何超过0或1的值)。请注意,这在视觉或数学上与垂直夸张不同。

Additional kwargs are passed on to the *blend_mode* function.
返回:
恩达雷

范围在0-1之间的浮点的MXNX4数组。

shade_normals(normals, fraction=1.0)[源代码]

使用为光源定义的方位角和仰角计算曲面法向量的照明强度。

想象一个人造太阳以一定的方位角和仰角无限地照射着我们的表面。向太阳倾斜的表面部分应该变亮,而那些面朝外的部分应该变暗。

参数:
fraction数字,可选

增加或减少山阴的对比度。大于1的值将导致中间值移近完全照明或阴影(并剪切任何超过0或1的值)。请注意,这在视觉或数学上与垂直夸张不同。

返回:
恩达雷

介于0-1之间的二维照明值数组,其中0完全处于阴影中,1完全亮起。

shade_rgb(rgb, elevation, fraction=1.0, blend_mode='hsv', vert_exag=1, dx=1, dy=1, **kwargs)[源代码]

使用此光源调整 rgb 输入数组,给人一个阴影地形图的印象 高程 .

参数:
rgb类数组

(M,N,3)RGB数组,假设在0到1的范围内。

elevation类数组

用于生成着色贴图的高度值的(M,N)数组。

fraction

增加或减少山阴的对比度。大于1的值将导致中间值移近完全照明或阴影(并剪切任何超过0或1的值)。请注意,这在视觉或数学上与垂直夸张不同。

blend_mode'hsv'、'overlay'、'soft'或Callable,可选

用于将颜色映射数据值与照明强度组合的混合类型。为了向后兼容,这默认为“hsv”。请注意,对于大多数地形表面,“覆盖”或“软”看起来更逼真。如果提供了用户定义函数,则需要将浮动的MXNX3 RGB数组(范围为0到1)与MXNX1 Hillshade数组(也为0到1)组合在一起。(呼叫签名) func(rgb, illum, **kwargs) )提供给此函数的其他Kwarg将传递给 blend_mode 功能。

vert_exag数字,可选

计算照明时放大高程值的量。这可用于校正x-y坐标系和高程坐标系之间的单位差异(例如十进制度数与米),也可用于夸大或淡化地形。

dx数字,可选

输入的X间距(列) 高程 网格。

dy数字,可选

输入的Y间距(行) 高程 网格。

Additional kwargs are passed on to the *blend_mode* function.
返回:
恩达雷

介于0-1之间的(m,n,3)浮点数组。