从matplotlib colorbar中挑选情节颜色?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从matplotlib colorbar中挑选情节颜色?相关的知识,希望对你有一定的参考价值。

我有一个循环,每次迭代都会绘制数据(在同一个图上)。我试图弄清楚如何设置它,以便根据迭代次数从颜色栏中绘制每个数据集的颜色 - 也就是说,循环的每次迭代都会绘制一条深蓝色阴影的线条(例如)比之前的线。

我的代码看起来像这样:

for k in numpy.arange(0, iterations, 500):
    h,binEdges=numpy.histogram(data1[k])
    bincenters = 0.5*(binEdges[1:]+binEdges[:-1])
    plt.plot(bincenters,h,label=(str(k)))
plt.title(title)
plt.legend(fontsize=6)
plt.show()

(data1是一本字典。)有谁知道如何做到这一点?

答案

可以通过调用colormap获得colormap的值。色彩映射范围从0到1。 cmap = plt.get_cmap("Blues"),色彩图的中间部分是cmap(0.5)。因此,您可以使用规范化的循环索引调用colormap以从中获取颜色。

import numpy as np
import matplotlib.pyplot as plt

data = [np.random.rand(13+10*i) for i in range(10)]
data1 = dict(zip(range(10),data))

cmap=plt.get_cmap("Blues")
kn = np.arange(10)
for k in kn:
    h,binEdges=np.histogram(data1[k])
    bincenters = 0.5*(binEdges[1:]+binEdges[:-1])
    plt.plot(bincenters,h,label=(str(k)), color=cmap(float(k)/kn.max()))

plt.legend(fontsize=6)
plt.show()

enter image description here

以上是关于从matplotlib colorbar中挑选情节颜色?的主要内容,如果未能解决你的问题,请参考以下文章

Python matplotlib colorbar 科学记数法库

Python使用matplotlib绘图并去除颜色样条colorbar实战:remove colorbar from figure in matplotlib

如何将带有colorbar的matplotlib pgf导入到latex文档中

减少matplotlib图中的左右边距

使用颜色条删除图像不会释放 matplotlib 中的内存?

matplotlib colorbar:需要在bar顶部使用指数强制科学记数法