绘制等高线子图,每个子图都有自己的颜色条

Plotly contour subplots each having their own colorbar

我正在尝试使用 Plotly 生成轮廓。我使用子图在 5x1 网格中绘制了 5 个等高线。我看不到可以为每个轮廓子图设置单独颜色条的选项。对于线图我可以使用 shared_xaxes 或 shared_yaxes 选项,但无法找到我可以为这个 5x1 网格中的每个子图设置单独颜色条的文档。

以下是我尝试浏览的一些参考链接:

https://plot.ly/python/contour-plots/

https://plot.ly/python/heatmaps-contours-and-2dhistograms-tutorial/

https://plot.ly/python/reference/

每个子图实际上都有自己的颜色条。问题是默认情况下它们被绘制在彼此之上,所以很难说它们有几个。通过设置颜色条的 leny 参数,您可以 space 出来并查看它们与每个轮廓的关联方式。这是一个大致基于 Plotly contour docs:

的示例
import plotly
import plotly.graph_objs as go
plotly.offline.init_notebook_mode()

fig = plotly.tools.make_subplots(rows=3, cols=1)
cbarlocs = [.85, .5, .15]
zmax = [2, 5, 10]

for n in range(3):
    trace = go.Contour(
            z=[[10, 10.625, 12.5, 15.625, 20],
               [5.625, 6.25, 8.125, 11.25, 15.625],
               [2.5, 3.125, 5., 8.125, 12.5],
               [0.625, 1.25, 3.125, 6.25, 10.625],
               [0, 0.625, 2.5, 5.625, 10]], 
            colorbar=dict(len=0.25, y=cbarlocs[n]), 
            zmin=0, zmax=zmax[n])

    fig.append_trace(trace, n+1, 1)

plotly.offline.iplot(fig)

关键的部分是colorbar=dict(len=0.25, y=cbarlocs[n])。此代码的结果如下所示: