Python 在参数变化的情况下绘制给定函数的热图
我试图为我定义的函数绘制热图。在我的函数中,我有A和p的值,所以在我的热图中,我希望A和p是我的x轴和y轴。当我运行代码时,只绘制了四分之一的热图,我不知道为什么 这是我的代码和我一直在尝试的东西Python 在参数变化的情况下绘制给定函数的热图,python,Python,我试图为我定义的函数绘制热图。在我的函数中,我有A和p的值,所以在我的热图中,我希望A和p是我的x轴和y轴。当我运行代码时,只绘制了四分之一的热图,我不知道为什么 这是我的代码和我一直在尝试的东西 def funct_one(A, x, p): return np.log(abs((A/4) * (((p+1)**(p+1))/p**p) * ((p*x**(p-1)) - (p+1)*x**p))) def funct_two(A, x, p): n1 = 101
def funct_one(A, x, p):
return np.log(abs((A/4) * (((p+1)**(p+1))/p**p) * ((p*x**(p-1)) - (p+1)*x**p)))
def funct_two(A, x, p):
n1 = 101
n2 = 101
var_l = 0
for i in range(n1):
x = log(A, x, p)
var_l = var_l + funct_one(A, x, p)
for j in range(n2):
glob_l = var_l/n2
return glob_l
A = np.linspace(0.1,4,50)
p = np.linspace(0.5,5,50)
# Filling heatmap
map = np.empty((A.size, p.size))
for i in range(A.size):
for j in range(p.size):
x=0.2
map[i,j] = funct_two(A[i], x, p[j])
fig = plt.figure(figsize = (8,8))
s = fig.add_subplot(1,1,1, xlabel='A', ylabel='p')
im = s.imshow(map, extent=(A[0], A[-1], p[0], p[-1]),origin='lower')
fig.colorbar(im)
热图没有完全填充,只填充了四分之一,其余部分留空。有人能告诉我为什么吗?我不知道这个问题是否仍然与你有关,但是:你能告诉我们
x=log(A,x,p)
是什么吗?堆栈溢出不允许我删除这个问题,但结果是热图将白色绘制为一个值,这给了我一种错觉,即地图没有完全着色