繁体   English   中英

将给定的轮廓线颜色值转换为RGB代码

[英]Convert given value of contourf color to rgb code

我使用viridis配色方案在边界vmin = 0,vmax = 4中创建了2D Contourf图。 这是代码:

ax.contourf(xi/d,yi/d,data/d,12,vmin=0,vmax=4,cmap=vs.viridis(),aspect='equal')

现在,我从另一个计算中获得一个特定位置的数据点,其数据为data = 3.5,并希望使用彩色圆片将该轮廓叠加到轮廓上。

所以我怎么能将rgb颜色信息添加到轮廓线范围和使用的colorcheme中的圆中

感谢帮助

您可以使用matplotlib.colors.Normalize实例来执行此操作:

import matplotlib.pyplot as plt
import matplotlib.colors as colors

norm = colors.Normalize(vmin=0,vmax=4)
cmap = plt.cm.viridis

mycolor = cmap(norm(3.5))
print mycolor
# (0.67848900000000001, 0.86374200000000001, 0.189503, 1.0)

注意,如果颜色图是从其他文件导入的,则必须先在matplotlib注册它,然后才能进行此操作。 例如:

import myviridisfile as vs
plt.register_cmap(name='viridis', cmap=vs.viridis)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM