|
|
1
ImportanceOfBeingErnest
6 年前
如果这只是关于视觉外观,则可以将颜色规格化为最大绝对值和其负相对值之间的范围,这样,零总是在中间(
max bins
)。
import numpy as np;np.random.seed(42)
将matplotlib.pyplot导入为plt
plt.rcparams[“Figure.FigSize”]=6.4,4
定义randn(n,sigma,mu):
返回sigma*np.random.randn(n)+mu
x1=randn(999,40.,-80)
x2=randn(750、40、80)
x3=兰登(888,16.,-30)
def hist(x,ax=无):
cm=plt.cm.get_cmap(“地震”)。
ax=ax或plt.gca()。
_,箱,补丁=ax.hist(x,color=“r”,箱=30)
料仓中心=0.5*(料仓[:-1]+料仓[1:]
最大值=np.abs(bin_中心).max()
norm=plt.正火(-maxi,maxi)
对于c,p-in-zip(bin_中心,补丁):
plt.setp(p,“面色”,cm(norm(c)))
图,轴=plt.子批次(nrows=3,sharex=true)
对于x,ax in zip([x1,x2,x3],轴):
历史(x,ax=ax)
请显示())
h零总是在中间(max |bins| )
import numpy as np; np.random.seed(42)
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = 6.4,4
def randn(n, sigma, mu):
return sigma * np.random.randn(n) + mu
x1 = randn(999, 40., -80)
x2 = randn(750, 40., 80)
x3 = randn(888, 16., -30)
def hist(x, ax=None):
cm = plt.cm.get_cmap("seismic")
ax = ax or plt.gca()
_, bins, patches = ax.hist(x,color="r",bins=30)
bin_centers = 0.5*(bins[:-1]+bins[1:])
maxi = np.abs(bin_centers).max()
norm = plt.Normalize(-maxi,maxi)
for c, p in zip(bin_centers, patches):
plt.setp(p, "facecolor", cm(norm(c)))
fig, axes = plt.subplots(nrows=3, sharex=True)
for x, ax in zip([x1,x2,x3], axes):
hist(x,ax=ax)
plt.show()
|