我仍然在设计我想要做的子图的类型,但是当我们在文档中看到有标题的多个子图时
from plotly.subplots import make_subplots
import plotly.graph_objects as go
fig = make_subplots(
rows=2, cols=2,
subplot_titles=("Plot 1", "Plot 2", "Plot 3", "Plot 4"))
fig.add_trace(go.Scatter(x=[1, 2, 3], y=[4, 5, 6]),
row=1, col=1)
fig.add_trace(go.Scatter(x=[20, 30, 40], y=[50, 60, 70]),
row=1, col=2)
fig.add_trace(go.Scatter(x=[300, 400, 500], y=[600, 700, 800]),
row=2, col=1)
fig.add_trace(go.Scatter(x=[4000, 5000, 6000], y=[7000, 8000, 9000]),
row=2, col=2)
fig.update_layout(height=500, width=700,
title_text="Multiple Subplots with Titles")
fig.show()
这给
这很好,但请注意,传说中只有一个地方。(跟踪0,跟踪1等)
在我的设计中,左上角的情节有一个传说,另三个有其他的传说。是否有一种方法来个性化或定制子情节的传说?
发布于 2022-02-05 18:44:17
这个话题是在这里论坛上讨论过的,似乎不可能有多个传说。但是,在同一个线程中@Jay深层Mistry提供了部分解决方案。
他使用图例组将跟踪分组在一起,然后使用update_layout
方法中的参数update_layout
使图例呈现为多个图例。然而,这种间距只在垂直方向工作,所以您的多个传说仍然将垂直间隔在右侧的情节。例如:
from plotly.subplots import make_subplots
import plotly.graph_objects as go
fig = make_subplots(
rows=2, cols=2,
subplot_titles=("Plot 1", "Plot 2", "Plot 3", "Plot 4"))
fig.add_trace(go.Scatter(x=[1, 2, 3], y=[4, 5, 6], legendgroup = '1'),
row=1, col=1)
fig.add_trace(go.Scatter(x=[20, 30, 40], y=[50, 60, 70], legendgroup = '2'),
row=1, col=2)
fig.add_trace(go.Scatter(x=[300, 400, 500], y=[600, 700, 800], legendgroup = '2'),
row=2, col=1)
fig.add_trace(go.Scatter(x=[4000, 5000, 6000], y=[7000, 8000, 9000], legendgroup = '2'),
row=2, col=2)
fig.update_layout(height=500, width=700,
title_text="Multiple Subplots with Titles",
legend_tracegroupgap=180)
fig.show()
或者,您可以添加另一个图例,方法是使用注释绘制带有所附文本的框,但是它没有任何功能。
https://stackoverflow.com/questions/70999538
复制