如何使用Python Plotly创建子图?
Plotly是一个用于数据可视化的开源Python库,支持各种类型的图表。在本教程中,我们将展示如何在单个图表上显示多个图表。
- 
在这里,我们将使用 plotly.graph_objects 生成图形。它包含大量方法来自定义图表并将它们渲染为HTML格式。 
- 
我们将使用方法 make_subplots 来添加子图。 
按照给定步骤使用Python Plotly创建子图。
步骤1
导入 plotly.graphs_objs 模块并使用 go 别名。
import plotly.graphs_objs as go步骤2
导入make_subplots以创建子图
from plotly.subplots import make_subplots步骤3
使用以下坐标创建数据框−
data = {
   'x':['a','b','c'],
   'y':['d','e','f'],
   'z':['a','e','i']
}
df = pd.DataFrame(data)步骤4
创建两个散点图并将它们存储在变量 first_line 和 second_line 中。
first_line = go.Scatter(x=df["x"], y=df["y"], name="one")
second_line = go.Scatter(x=df["x"], y=df["z"], name="two")步骤5
设置 make_subplots() 方法使用 行、列、shared_yaxes 。
fig = make_subplots(rows=1, cols=3, shared_yaxes=True)示例
创建子图的完整代码如下−
导入 plotly.graph_objects as go
从 plotly.subplots 导入 make_subplots
导入 pandas as pd
data = {
   'x':['a','b','c'],
   'y':['d','e','f'],
   'z':['a','e','i']
}
df = pd.DataFrame(data)
first_line = go.Scatter(x=df["x"], y=df["y"], name="第一条线")
second_line = go.Scatter(x=df["x"], y=df["z"], name="第二条线")
fig = make_subplots(rows=1, cols=3, shared_yaxes=True, horizontal_spacing=0.10)
fig.add_trace(first_line, row=1, col=1)
fig.add_trace(second_line, row=1, col=2)
fig.update_layout(height=400, width=716, title_text="在 Plotly 中创建子图")
fig.show()输出结果
执行后,它将在浏览器上产生以下图表 −

我们使用了 make_subplots() 方法的 horizontal_spacing 属性来为两个子图之间提供间距。
 极客教程
极客教程