绘制等高线子图,每个子图都有自己的颜色条
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/
每个子图实际上都有自己的颜色条。问题是默认情况下它们被绘制在彼此之上,所以很难说它们有几个。通过设置颜色条的 len
和 y
参数,您可以 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])
。此代码的结果如下所示:
我正在尝试使用 Plotly 生成轮廓。我使用子图在 5x1 网格中绘制了 5 个等高线。我看不到可以为每个轮廓子图设置单独颜色条的选项。对于线图我可以使用 shared_xaxes 或 shared_yaxes 选项,但无法找到我可以为这个 5x1 网格中的每个子图设置单独颜色条的文档。
以下是我尝试浏览的一些参考链接:
https://plot.ly/python/contour-plots/
https://plot.ly/python/heatmaps-contours-and-2dhistograms-tutorial/
每个子图实际上都有自己的颜色条。问题是默认情况下它们被绘制在彼此之上,所以很难说它们有几个。通过设置颜色条的 len
和 y
参数,您可以 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])
。此代码的结果如下所示: