我正在尝试获取我提前生成的cbrewer Reds colormap。 但是,当我尝试使用它时,我仍然会得到一些默认的colormap。我究竟做错了什么? 这是情节:https://plot.ly/~smirnod1/54/confusion-matrix/
这是一个代码示例:
import plotly.plotly as py
from plotly.graph_objs import *
py.sign_in('username', 'api_key')
data = Data([
Heatmap(
x=['Not Churned', 'Churned'],
y=['Churned', 'Not Churned'],
z=[[128, 355], [2827, 23]],
autocolorscale=False,
colorscale=[[1, 'rgb(255,245,240)'], [417, 'rgb(254,224,210)'], [834, 'rgb(252,187,161)'], [1250, 'rgb(252,146,114)'], [1667, 'rgb(251,106,74)'], [2083, 'rgb(239,59,44)'], [2500, 'rgb(203,24,29)'], [2916, 'rgb(165,15,21)'], [3333, 'rgb(103,0,13)']],
name='y',
xsrc='smirnod1:55:b1dfa9',
ysrc='smirnod1:55:b2cd71',
zsrc='smirnod1:55:a9af99,9984f6'
)
])
layout = Layout(
barmode='overlay',
height=400,
title='Confusion Matrix',
width=400,
xaxis=XAxis(
title='Predicted value',
titlefont=dict(
color='#7f7f7f',
size=18
)
),
yaxis=YAxis(
title='True Value',
titlefont=dict(
color='#7f7f7f',
size=18
)
)
)
fig = Figure(data=data, layout=layout)
plot_url = py.plot(fig)
答案 0 :(得分:3)
色阶域项目必须位于0
和1
之间的缩放坐标中。
要控制色阶域,请使用zmin
和zmax
。
例如,
data = Data([
Heatmap(
x=['Not Churned', 'Churned'],
y=['Churned', 'Not Churned'],
z=[[128, 355], [2827, 23]],
zmin=1,
zmax=3333,
colorscale=[[0, 'rgb(255,245,240)'], [0.2, 'rgb(254,224,210)'], [0.4, 'rgb(252,187,161)'], [0.5, 'rgb(252,146,114)'], [0.6, 'rgb(251,106,74)'], [0.7, 'rgb(239,59,44)'], [0.8, 'rgb(203,24,29)'], [0.9, 'rgb(165,15,21)'], [1, 'rgb(103,0,13)']],
name='y',
xsrc='smirnod1:55:b1dfa9',
ysrc='smirnod1:55:b2cd71',
zsrc='smirnod1:55:a9af99,9984f6'
)
])
应该有用。