gpt4 book ai didi

Python/Matplotlib - 颜色栏范围和显示值

转载 作者:IT老高 更新时间:2023-10-28 22:12:11 27 4
gpt4 key购买 nike

当使用带有等高线图的 matplotlib 时,我无法让颜色条按我的意愿显示。我已经阅读了许多类似的例子,但仍然无法得到我想要的。

在下图中,我想要改变两件事。我希望在彩条上显示最小值和最大值(最大值应该是 2.0,最小值应该是 -0.1)。这两个值应该在颜色条的最边缘。另外,我希望颜色条在每次颜色转换时显示值。例如。在下图中,在 2.1 和 1.8 之间,还有另一个颜色过渡,其中没有显示值。

谁能帮帮我?我想我可能需要使用 norm,但到目前为止它对我没有用。

谢谢,

enter image description here

代码:

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]])

plt.contour(xi, yi, zi, 15, linewidths=0.5, colors='k')
plt.contourf(xi, yi, zi, 15, cmap=plt.cm.jet)
plt.colorbar()
plt.show()

最佳答案

如果我正确理解你想要什么,我认为应该这样做:

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()

enter image description here

关于Python/Matplotlib - 颜色栏范围和显示值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5826592/

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