如何在Python和plotly中显示比我实际需要的更大的colorbar/colorscale?

如何在Python和plotly中显示比我实际需要的更大的colorbar/colorscale?,python,colors,plotly,heatmap,Python,Colors,Plotly,Heatmap,我有一个热图,它的值在0到90之间。但是,我希望显示比实际数据集(数据集每月更改)间隔更多的colorscale。我需要不同的间隔颜色,如:0-50,51-100101-150151-200201-300301-500。如何使用Plotly和Python在colorscale中显示这些不同的颜色?到目前为止,我有这个,它创建了一个不尊重给定间隔的颜色条。它将我的数据(0-90个值)分成7种颜色,即使这些值没有映射到给定的颜色 def discrete_colorscale(bvals, colo

我有一个热图,它的值在0到90之间。但是,我希望显示比实际数据集(数据集每月更改)间隔更多的colorscale。我需要不同的间隔颜色,如:0-50,51-100101-150151-200201-300301-500。如何使用Plotly和Python在colorscale中显示这些不同的颜色?到目前为止,我有这个,它创建了一个不尊重给定间隔的颜色条。它将我的数据(0-90个值)分成7种颜色,即使这些值没有映射到给定的颜色

def discrete_colorscale(bvals, colors):
    """
    bvals - list of values bounding intervals/ranges of interest
    colors - list of rgb or hex colorcodes for values in [bvals[k], bvals[k+1]],0<=k < len(bvals)-1
    returns the plotly  discrete colorscale
    """
    if len(bvals) != len(colors) + 1:
        raise ValueError('len(boundary values) should be equal to  len(colors)+1')
    bvals = sorted(bvals)
    nvals = [(v - bvals[0]) / (bvals[-1] - bvals[0]) for v in bvals]  # normalized values

    dcolorscale = []  # discrete colorscale
    for k in range(len(colors)):
        dcolorscale.extend([[nvals[k], colors[k]], [nvals[k + 1], colors[k]]])
    return dcolorscale


bvals = [2, 50, 100, 150, 200, 300, 500]
colors = ['#0e7a04', '#f3ff2c', '#df8719', '#df8719','#641b6d','#810808']
dcolorsc = discrete_colorscale(bvals, colors)

fig = ff.create_annotated_heatmap(y=['0', '1'], z=z_values, annotation_text=z_text, colorscale=dcolorsc)

def离散颜色刻度(bvals,颜色):
"""
bvals-感兴趣的边界区间/范围的值列表
颜色-在[bvals[k],bvals[k+1]]中的值的rgb或十六进制颜色代码列表,0