如何在Python Plotly中将多个图形绘制为子图?
Plotly是一个用于创建图表的开源Python库。您可以使用Plotly中可用的功能将多个图形设置为子图。
在本教程中,我们将使用 plotly.graph_objects 来生成图形。它包含很多方法来自定义图表并将图表呈现为HTML格式。例如, plotly.subplots() 方法可用于添加子图。
按照以下步骤创建带有 Plotly express 的子图。
第1步
导入 plotly.graphs_objs 模块并将其别名为 go 。
import plotly.graphs_objs as go
第2步
导入 make_subplots 来创建子图。
from plotly.subplots import make_subplots
第3步
创建包含3行和1列的子图。
fig = make_subplots(rows=3, cols=1)
第4步
创建 append_trace() 方法以附加散点图。
fig.append_trace(go.Scatter(
x=[1,2,3,4,5],
y=[5,6,7,8,9],
), row=1, col=1)
fig.append_trace(go.Scatter(
x=[3,4,5,6,7],
y=[10,11,12,9,8],
), row=2, col=1)
fig.append_trace(go.Scatter(
x=[4,5,6,7,8],
y=[6,7,8,9,10]
), row=3, col=1)
第5步
使用 update_layout() 方法设置布局大小。
fig.update_layout(height=400, width=400, title_text="Subplots")
示例
这是绘制多个图形子图的完整代码 −
from plotly.subplots import make_subplots
import plotly.graph_objects as go
fig = make_subplots(rows=3, cols=1)
fig.append_trace(go.Scatter(
x=[1,2,3,4,5],
y=[5,6,7,8,9],
), row=1, col=1)
fig.append_trace(go.Scatter(
x=[3,4,5,6,7],
y=[10,11,12,9,8],
), row=2, col=1)
fig.append_trace(go.Scatter(
x=[4,5,6,7,8],
y=[6,7,8,9,10]
), row=3, col=1)
fig.update_layout(height=450, width=716, title_text="子图")
fig.show()
输出
将在浏览器上显示以下输出 −