如何在 Python Plotly 中将饼图绘制为具有自定义大小的子图?
plotlypythonserver side programmingprogramming
Plotly 是一个开源、交互式且基于浏览器的 Python 图表库。Python 用户可以使用 Plotly 生成不同类型的图表,包括科学图表、3D 图形、统计图表、财务图表等。
在本教程中,我们将展示如何使用 Plotly 将饼图绘制为具有自定义大小的子图。
在这里,我们将使用 plotly.offline 模块生成离线图。
我们将使用 plotly.graph_objects 模块生成图形。它包含许多生成图表的方法。
要创建子图,我们将使用 make_subplots() 方法。
按照下面给出的步骤将饼图绘制为子图。
步骤 1
导入plotly.offline模块以生成离线图。
from plotly.offline import plot
步骤 2
导入 plotly.graphs_objs 模块并将别名作为 go。
import plotly.graphs_objs as 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 )
示例
以下是将饼图显示为具有自定义大小的子图的完整代码 -
from plotly.subplots import make_subplots import plotly.graph_objects as go from plotly.offline import plot # Create subplots fig = make_subplots( rows=1, cols=2, specs=[[{"type": "pie"}, {"type": "pie"}]] ) # Set traces for the pie chart 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 ) # Traces for the second pie chart 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 an image plot(fig)
同样,您可以尝试创建不同类型的图形作为图像。
输出
它将在浏览器上显示以下输出 −