如何在 Python Plotly 中将饼图绘制为具有自定义大小的子图?

Plotly 是一个开源的、交互式的、基于浏览器的 Python 图表库。Python 用户可以使用 Plotly 生成不同类型的图表,包括科学图表、3D 图形、统计图表、金融图表等。

在本教程中,我们将展示如何使用 Plotly 将饼图绘制为具有自定义大小的子图。

  • 在这里,我们将使用plotly.offline模块生成离线图。

  • 我们将使用plotly.graph_objects模块来生成图形。它包含很多生成图表的方法。

  • 要创建子图,我们将使用该make_subplots()方法。

按照下面给出的步骤将饼图绘制为子图。

步骤1

导入plotly.offline模块以生成离线图。

fromplotly.offlineimport plot

第2步

导入plotly.graphs_objs模块和别名go

importplotly.graphs_objsas go

步骤 3

使用该make_subplots()方法生成“行”和“列”,绘图类型为“饼图”。

fig = make_subplots(
   rows=1, cols=2,
   specs=[[
      {"type": "pie"},
      {"type": "pie"}
   ]]
)

步骤4

使用该add_trace()方法为具有以下值的饼图设置轨迹 -

#为第一个饼图设置轨迹
fig.add_trace(go.Pie(
   values=[16, 15, 12, 6, 5, 4, 42],
   labels=["green", "red", "blue", "yellow", "orange", "purple"],
   domain=dict(x=[0, 0.5]),
   name="colors1"),
   row=1, col=1
)

#第二个饼图的轨迹
fig.add_trace(go.Pie(
   values=[27, 11, 25, 8, 1, 3, 25],
   labels=["white", "grey", "green", "maroon", "pink","red" ],

   domain=dict(x=[0.5, 1.0]),
   name="colors2"),
   row=1, col=2
)

示范

这是将饼图显示为具有自定义大小的子图的完整代码 -

fromplotly.subplotsimport make_subplots
importplotly.graph_objectsas go
fromplotly.offlineimport plot

#创建子图
fig = make_subplots(
   rows=1, cols=2,
   specs=[[{"type": "pie"}, {"type": "pie"}]]
)

#为饼图设置轨迹
fig.add_trace(go.Pie(
   values=[16, 15, 12, 6, 5, 4, 42],
   labels=["green", "red", "blue", "yellow", "orange", "purple" ],

   domain=dict(x=[0, 0.5]),
   name="colors1"),
   row=1, col=1
)

#第二个饼图的轨迹
fig.add_trace(go.Pie(
   values=[27, 11, 25, 8, 1, 3, 25],
   labels=["white", "grey", "green", "maroon", "pink","red" ],
   domain=dict(x=[0.5, 1.0]),
   name="colors2"),
   row=1, col=2
)
#绘制图像
plot(fig)

同样,您可以尝试创建不同类型的图形作为图像。

输出结果

它将在浏览器上显示以下输出 -