python – matplotlib中的自定义连续颜色映射
发布时间:2020-12-20 11:51:56 所属栏目:Python 来源:网络整理
导读:我已经阅读了有关此主题的一些问题,但我无法找到我的问题的具体答案. 让我们考虑下面的图片: 我的目标只是更改地图的限制颜色,例如在这种情况下,颜色图从深红色变为深蓝色,假设我希望它从深绿色变为深蓝色.具体来说,我会以与上例相同的连续方式从颜色#24416
我已经阅读了有关此主题的一些问题,但我无法找到我的问题的具体答案.
让我们考虑下面的图片: 我的目标只是更改地图的限制颜色,例如在这种情况下,颜色图从深红色变为深蓝色,假设我希望它从深绿色变为深蓝色.具体来说,我会以与上例相同的连续方式从颜色#244162转到#DCE6F1(蓝色调). 怎么可能这样做? [编辑] 我试过以下代码: import matplotlib.pyplot as plt import matplotlib.colors as clr some_matrix = ... cmap = clr.LinearSegmentedColormap('custom blue',['#244162','#DCE6F1'],N=256) plt.matshow(some_matrix,cmap=cmap) 但我收到错误消息TypeError:list indices必须是整数,而不是unicode. 解决方法LinearSegmentedColormap 没有采用颜色列表,它采用以下参数:
所以,您需要像上面那样定义字典,或者在您的情况下,我认为您只想使用 import matplotlib.pyplot as plt import matplotlib.colors as clr import numpy as np some_matrix = np.random.rand(10,10) cmap = clr.LinearSegmentedColormap.from_list('custom blue',N=256) plt.matshow(some_matrix,cmap=cmap) plt.show() (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |