gpt4 book ai didi

python - 设置等高线图颜色条的限制

转载 作者:太空狗 更新时间:2023-10-29 17:25:13 26 4
gpt4 key购买 nike

我见过很多例子,但并不适用于我的情况。我想做的是为颜色栏设置一个简单的最小值和最大值。为图像 cmap 设置范围很容易,但这不会将相同范围应用于颜色条的最小值和最大值。下面的代码可以解释:

triang = Triangulation(x,y)
plt.tricontourf(triang, z, vmax=1., vmin=0.)
plt.colorbar()

尽管 cmap 范围现在固定在 0 和 1 之间,但颜色条仍然固定在数据 z 的范围内。

最佳答案

I propose you incorporate you plot in a fig并使用颜色条从此示例中获取灵感

data = np.tile(np.arange(4), 2)
fig = plt.figure()
ax = fig.add_subplot(121)
cax = fig.add_subplot(122)
cmap = colors.ListedColormap(['b','g','y','r'])
bounds=[0,1,2,3,4]
norm = colors.BoundaryNorm(bounds, cmap.N)
im=ax.imshow(data[None], aspect='auto',cmap=cmap, norm=norm)
cbar = fig.colorbar(im, cax=cax, cmap=cmap, norm=norm, boundaries=bounds,
ticks=[0.5,1.5,2.5,3.5],)
plt.show()

您看到您可以为颜色栏和刻度中的颜色设置 bounds

这不是您想要达到的严格要求,但无花果的提示可能会有所帮助。

This other one uses ticks以及定义颜色条的比例。

import numpy as np
import matplotlib.pyplot as plt

xi = np.array([0., 0.5, 1.0])
yi = np.array([0., 0.5, 1.0])
zi = np.array([[0., 1.0, 2.0],
[0., 1.0, 2.0],
[-0.1, 1.0, 2.0]])

v = np.linspace(-.1, 2.0, 15, endpoint=True)
plt.contour(xi, yi, zi, v, linewidths=0.5, colors='k')
plt.contourf(xi, yi, zi, v, cmap=plt.cm.jet)
x = plt.colorbar(ticks=v)
print x
plt.show()

关于python - 设置等高线图颜色条的限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21952100/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com