当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Matplotlib.colors.LogNorm用法及代码示例


Matplotlib是Python中令人惊叹的可视化库,用于数组的二维图。 Matplotlib是一个基于NumPy数组的多平台数据可视化库,旨在与更广泛的SciPy堆栈配合使用。

matplotlib.colors.LogNorm()

matplotlib.colors.LogNorm()类属于matplotlib.colors模块。 matplotlib.colors模块用于将颜色或数字参数转换为RGBA或RGB。此模块用于将数字映射到颜色或以一维颜色数组(也称为colormap)进行颜色规格转换。

matplotlib.colors.LogNorm类用于将值标准化为对数刻度上的0-1范围。如果未设置vmax或vmin,则分别从处理的第一个输入的最大值和最小值初始化它们。这表示__call__(A)调用autoscale_None(A)。如果剪辑设置为True,并且给定的值超出范围,则返回的值为0或1,以最接近的值为准。如果vmin == vmax,则返回0。它适用于也包括掩码数组的数组或标量。如果将剪辑设置为True,则将遮罩的值设置为其他值,否则它们将保持遮罩。剪辑的默认设置为False。

该类的方法:

  1. autoscale(self, A):它用于将vmax,vmin分别设置为A的最大值和最小值。
  2. autoscale_None(self, A):它仅用于自动缩放none-valued vmin或vmax。
  3. inverse(self, value):返回色彩图的反转值。

范例1:



import matplotlib.pyplot as plt 
import numpy as np 
from matplotlib import colors 
from matplotlib.ticker import PercentFormatter 
  
# Setting random state for  
# reproducibility 
np.random.seed(19680801) 
  
max_points = 100000
all_bins = 20
  
# Generate a normal distribution,  
# center at x = 0 and y = 5 
a = np.random.randn(max_points) 
b = .4 * a + np.random.randn(100000) + 5
  
figure, axes = plt.subplots(3, 1, 
                            figsize =(5, 15), 
                            sharex = True,  
                            sharey = True, 
                            tight_layout = True) 
  
# Incrementing the number of  
# bins on each axis 
axes[0].hist2d(a, b, bins = 40) 
  
# Defining normalization of  
# the colors 
axes[1].hist2d(a, b, bins = 40, 
               norm = colors.LogNorm()) 
  
# defining custom numbers of bins  
# for each axis 
axes[2].hist2d(a, b, bins =(80, 10), 
               norm = colors.LogNorm()) 
  
plt.show()


输出:

matplotlib.colors.LogNorm
matplotlib.colors.LogNormmatplotlib.colors.LogNorm

范例2:

import matplotlib.pyplot as plt 
import numpy as np 
from matplotlib.colors import LogNorm 
  
  
N = 100
A, B = np.mgrid[-3:3:complex(0, N), 
                -2:2:complex(0, N)] 
  
X1 = np.exp(-(A)**2 - (B)**2) 
X2 = np.exp(-(A * 10)**2 - (B * 10)**2) 
X = X1 + 50 * X2 
  
figure, (axes0, axes1) = plt.subplots(2, 1) 
  
P = axes0.pcolor(A, B, X, 
               norm = LogNorm(vmin = X.min(), 
                              vmax = X.max()), 
                 cmap ='PuBu_r') 
  
figure.colorbar(P, ax = axes0) 
  
P = axes1.pcolor(A, B, X, 
                 cmap ='PuBu_r') 
  
figure.colorbar(P, ax = axes1) 
  
plt.show()

输出:
matplotlib.colors.LogNorm




相关用法


注:本文由纯净天空筛选整理自RajuKumar19大神的英文原创作品 Matplotlib.colors.LogNorm class in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。