SimpleNorm#
- class astropy.visualization.SimpleNorm(stretch='linear', percent=None, *, min_percent=None, max_percent=None, vmin=None, vmax=None, power=1.0, log_a=1000, asinh_a=0.1, sinh_a=0.3, clip=False, invalid=-1.0)[源代码]#
基类:
object
类创建可用于使用Matplotlib显示图像的规范化对象。
此便利类提供最常见的图像拉伸功能。其他伸展功能可在
ImageNormalize
.- 参数:
- stretch{‘线性’,‘SQRT’,
应用于图像的拉伸函数。默认为“线性”。
- percent :
float
,可选Python:Float,可选 用于确定最小和最大剪切级别像素值的图像值百分比。较低的削减水平将设定在
(100 - percent) / 2
百分位数,而上限水平将设置为(100 + percent) / 2
百分位。默认为100.0。percent
如果出现以下情况,则忽略min_percent
或max_percent
是输入。- min_percent :
float
,可选Python:Float,可选 用于确定最小切割水平的像素值的百分位值。默认为0.0。
min_percent
覆盖percent
.- max_percent :
float
,可选Python:Float,可选 用于确定最大切割水平的像素值的百分位值。默认为100.0。
max_percent
覆盖percent
.- vmin :
float
,可选Python:Float,可选 最小切割级别的像素值。数据值小于
vmin
将设置为vmin
然后拉伸图像。默认值是图像最小值。vmin
覆盖min_percent
.- vmax :
float
,可选Python:Float,可选 最大剪切级别的像素值。数据值大于
vmax
将设置为vmax
然后拉伸图像。默认值为图像最大值。vmax
覆盖max_percent
.- power :
float
,可选Python:Float,可选 权力指数
stretch='power'
.默认为1.0。- log_a :
float
,可选Python:Float,可选 的日志索引
stretch='log'
. 默认值为1000。- asinh_a :
float
,可选Python:Float,可选 为
stretch='asinh'
,asinh曲线从线性行为转变为对数行为的值,表示为标准化图像的一小部分。必须在0和1之间的范围内。默认值为0.1。- sinh_a :
float
,可选Python:Float,可选 的缩放参数
stretch='sinh'
。默认值为0.3。- clip : bool ,可选可选的布尔
如果
True
,数据值超出 [0:1] 范围被剪裁到 [0:1] 范围。- invalid :
None
或float
,可选PYTHON:NONE或PYTHON:FLOAT,可选 用于分配由规范化生成的NaN值的值。输入中的NaN
data
数组没有更改。对于matplotlib规范化,invalid
值应映射到matplotlib colormap“下”值(即,任何有限值< 0)。如果None
,那么NaN值不会被替换。如果出现以下情况,此关键字无效clip=True
.
参见
实例
import numpy as np import matplotlib.pyplot as plt from astropy.visualization import SimpleNorm image = np.arange(65536).reshape((256, 256)) snorm = SimpleNorm('sqrt', percent=98) norm = snorm(image) fig, ax = plt.subplots() axim = ax.imshow(image, norm=norm, origin='lower') fig.colorbar(axim)
方法总结
__call__
(数据)返回一个
ImageNormalize
可用于使用Matplotlib显示图像的实例。imshow
(data[, ax])使用matplotlib的
matplotlib.pyplot.imshow
具有此类定义的规范化的函数。方法文件
- __call__(data)[源代码]#
返回一个
ImageNormalize
可用于使用Matplotlib显示图像的实例。- 参数:
- data :
ndarray
恩达雷 图像数组。
- data :
- 返回:
- 结果 :
ImageNormalize
实例ImageNormalize实例 安
ImageNormalize
实例,该实例可用于使用Matplotlib显示图像。
- 结果 :
- imshow(data, ax=None, **kwargs)[源代码]#
使用matplotlib的
matplotlib.pyplot.imshow
具有此类定义的规范化的函数。- 参数:
- data : 2D or 3D array_like2D或3D
要显示的数据。可以是什么
imshow
和ImageNormalize
双方都接受。- ax :
None
或Axes
,可选PYTHON:无或轴,可选 - **kwargs :
dict
,可选Python:Dict,可选 关键词论点传递给
imshow
.不能包括norm
或X
关键字
- 返回:
实例
import numpy as np import matplotlib.pyplot as plt from astropy.visualization import SimpleNorm image = np.arange(65536).reshape((256, 256)) snorm = SimpleNorm('sqrt', percent=98) fig, ax = plt.subplots() axim = snorm.imshow(image, ax=ax, origin='lower') fig.colorbar(axim)