Bot*_*ond 5 python matplotlib seaborn colormap
我试图了解matplotlib色彩图的工作原理。考虑以下代码:
import matplotlib.pyplot as plt
cmap = plt.get_cmap('jet')
print cmap(200)
Run Code Online (Sandbox Code Playgroud)
打印
(1.0, 0.46550472040668145, 0.0, 1.0)
Run Code Online (Sandbox Code Playgroud)
所以我的理解是,颜色图将数值(在本例中为 200)映射到颜色值(在本例中为 1.0、0.46550472040668145、0.0、1.0)。matplotlib 如何设置其颜色图的范围?
是否可以定义应用线性映射的最大值和最小值?但是,如果imshow()可以设置 avmin和 avmax参数,我必须在颜色图级别上执行此操作,因为稍后我将向另一个函数提供颜色图。
这可能是关于颜色图如何工作的更普遍的问题;seaborn例如,在 的调色板中,也没有范围选项。
Imp*_*est 10
颜色图的范围始终在 0 和 1 之间。您需要将数据标准化到该范围。例如,要将 0 到 400 之间的范围线性映射到颜色图的颜色,
import matplotlib.pyplot as plt
cmap = plt.get_cmap('viridis')
norm = plt.Normalize(0, 400)
color = cmap(norm(200.))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8636 次 |
| 最近记录: |