Plotly Heatmap提示无效属性'scl'的参数替换方案咨询
问题原因
旧版本Plotly中scl是colorscale参数的简写别名,在后续版本迭代中该别名已被移除,因此会触发参数不合法的报错。
修正方案
将Heatmap配置中的scl参数替换为标准参数名colorscale即可,修正后的代码如下:
def plotHeatmap(array, name="plot"): data = Data([ Heatmap( z=array, colorscale='Greys' # 此处替换原scl参数 ) ]) layout = Layout( autosize=False, title=name ) fig = Figure(data=data, layout=layout) # 若使用Plotly v4及以上版本,原plotly.plotly.iplot也已废弃,可直接用下方代码渲染 # fig.show() # 若仍需使用iplot接口,可替换为plotly.offline.iplot return plotly.plotly.iplot(fig, filename=name) # 以下变量定义来自关联示例代码,无报错无需修改 ArrayDicom = vtkImageToNumPy(reader.GetOutput(), ConstPixelDims) plotHeatmap(numpy.rot90(ArrayDicom[:, 256, :]), name="CT_Original")
补充说明
如果替换参数后仍出现接口不存在的报错,是因为Plotly后续版本已经不再默认支持旧版的在线绘图接口plotly.plotly.iplot,可以直接调用Figure实例的show()方法完成离线绘图,不需要额外申请账号或配置接口密钥,使用更便捷。
内容的提问来源于stack exchange,提问作者user42
相关产品推荐
相关产品推荐

