Python 组合颜色栏,既可作为颜色栏又可作为图例使用

Python 组合颜色栏,既可作为颜色栏又可作为图例使用,python,matplotlib,julia,Python,Matplotlib,Julia,我最近看到一张powerpoint幻灯片,里面有一个很好的情节,我怀疑是用Julia或Python制作的。演讲的人没有详细说明如何绘制这幅图(可能他认为我是想获取他的数据,而不是实际的绘制风格) 有人知道如何生产这种侧边彩条吗?正如您从所附的图像中看到的,对于绘制的不同曲线,颜色栏既可用作颜色栏,也可用作图例 下面是一些创建类似色条的代码: 将numpy导入为np 将matplotlib.pyplot作为plt导入 从matplotlib导入cm 从matplotlib.colors导入Line

我最近看到一张powerpoint幻灯片,里面有一个很好的情节,我怀疑是用Julia或Python制作的。演讲的人没有详细说明如何绘制这幅图(可能他认为我是想获取他的数据,而不是实际的绘制风格)


有人知道如何生产这种侧边彩条吗?正如您从所附的图像中看到的,对于绘制的不同曲线,颜色栏既可用作颜色栏,也可用作图例

下面是一些创建类似色条的代码:

将numpy导入为np
将matplotlib.pyplot作为plt导入
从matplotlib导入cm
从matplotlib.colors导入LinearSegmentedColormap
def burr_pdf(x、c、k):
返回c*k*(x**(c-1))/(1+x**c)**(k+1)
xs=np.linspace(0.0001,3300)
c_k_参数=[(1,1)、(1,2)、(1,3)、(2,1)、(3,1)、(0.5,2)]
曲线_标签=[f'c={c};k={k}表示c,k在c_k_参数中]
曲线颜色=np.linspace(0.98,0.02,len(c_k_参数))
cmap=cm.get\u cmap('jet'))
特殊映射列表=[在cmap(i/256)中c的元组((c+2)/3)在范围(256)中i的元组]#“增白”颜色
对于曲线颜色中的c:
特殊地图列表[int(c*256)]=cmap(c)
特殊映射列表[int(c*256)-1]=cmap(c)
特殊映射=LinearSegmentedColormap.from映射列表(“”,特殊映射列表)
图,ax=plt.子批次(图尺寸=(7,7))
对于(c,k),压缩中的列(c_k_参数,曲线颜色):
ax.绘图(xs,burr_pdf(xs,c,k),颜色=cmap(col))
ax.集合标题(“毛刺–概率密度函数”)
ax.set_ylim((0,2))
ax.set_xlim((0,3))
cbar=plt.colorbar(cm.ScalarMappable(norm=None,cmap=special\u map),ax=ax,ticks=curve\u colors)
cbar.ax.set\u标签(曲线标签)
plt.show()
这些曲线来自维基百科。 情节:


他们大概创建了一个半透明的色条,并在其中绘制了一些粗线。