Dataframe Pandas-带有分组图表的绘图子图
我有以下两个相似的数据框,其中包含两个不同团队的数据 dataFrameA:Dataframe Pandas-带有分组图表的绘图子图,dataframe,plotly,bar-chart,subplot,Dataframe,Plotly,Bar Chart,Subplot,我有以下两个相似的数据框,其中包含两个不同团队的数据 dataFrameA: name bat_pos_1 ing_1_runs bat_pos_2 ing_2_runs jack 2 10 2 20 john 1 20 1 5 dataFrameB: name bat_pos_1 ing_1_runs ba
name bat_pos_1 ing_1_runs bat_pos_2 ing_2_runs
jack 2 10 2 20
john 1 20 1 5
dataFrameB:
name bat_pos_1 ing_1_runs bat_pos_2 ing_2_runs
jill 5 20 3 30
nancy 4 5 2 7
我使用下面的代码来呈现一个极为分组的条形图
将熊猫作为pd导入
导入plotly.graph_对象作为go
从plotly.subplot导入make_子地块
figTeamARuns=go.Figure(数据=[
go.Bar(name='Ist einning',x=dataFrameA['name'],y=dataFrameA['ing_1_runs']),
go.Bar(name='第二局',x=dataFrameA['name'],y=dataFrameA['ing_2_runs']),和,
])
figTeamARuns.update_布局(barmode='group')
figTeamARuns.show()
figTeamBRuns=go.Figure(数据=[
go.Bar(name='Ist einning',x=dataFrameB['name'],y=dataFrameB['ing_1_runs']),
go.Bar(name='第二局',x=dataFrameB['name'],y=dataFrameB['ing_2_runs']),
])
figTeamBRuns.update_布局(barmode='group')
figTeamBRuns.show()
上面的代码呈现两个图表,一个在另一个下面,但我希望相同的图表并排显示。我知道我可以使用有情节的子情节,但我不知道如何去做。这是我试图使用的代码
figFinalBatting = go.Figure()
figFinalBatting = make_subplots(rows=1, cols=2)
我被下一步该做什么所困扰。有什么想法吗?我认为这里的问题很清楚。定义fig后,您需要添加每个跟踪,并指定要显示的子批次方案的in with row、col
将熊猫作为pd导入
导入plotly.graph_对象作为go
从plotly.subplot导入make_子地块
图=生成子图(行=1,列=2)
图1添加_轨迹(
go.Bar(name='Ist ninning',
x=dataFrameA['name'],
y=dataFrameA['ing_1_runs']),
行=1,列=1)
图1添加_轨迹(
go.Bar(name='2局',
x=dataFrameA['name'],
y=dataFrameA['ing_2_runs']),
行=1,列=1)
图1添加_轨迹(
go.Bar(name='Ist ninning',
x=dataFrameB['name'],
y=dataFrameB['ing_1_runs']),
行=1,列=2)
图1添加_轨迹(
go.Bar(name='2st局',
x=dataFrameB['name'],
y=dataFrameB['ing_2_runs']),
行=1,列=2)
图2(图3)
我认为这里的问题很清楚。定义fig后,您需要添加每个跟踪,并指定要显示的子批次方案的in with row、col
将熊猫作为pd导入
导入plotly.graph_对象作为go
从plotly.subplot导入make_子地块
图=生成子图(行=1,列=2)
图1添加_轨迹(
go.Bar(name='Ist ninning',
x=dataFrameA['name'],
y=dataFrameA['ing_1_runs']),
行=1,列=1)
图1添加_轨迹(
go.Bar(name='2局',
x=dataFrameA['name'],
y=dataFrameA['ing_2_runs']),
行=1,列=1)
图1添加_轨迹(
go.Bar(name='Ist ninning',
x=dataFrameB['name'],
y=dataFrameB['ing_1_runs']),
行=1,列=2)
图1添加_轨迹(
go.Bar(name='2st局',
x=dataFrameB['name'],
y=dataFrameB['ing_2_runs']),
行=1,列=2)
图2(图3)
非常有效,谢谢!我曾试图找到,但其他答案显示将数据数组传递给子图,但没有成功。我没有意识到,仅仅为不同的记录道提及同一列会导致对条进行分组。你就在这里。在DOCS中,没有这样的例子。在这里,您可以考虑添加一个传奇组,或者更好地连接2个数据框。我曾试图找到,但其他答案显示将数据数组传递给子图,但没有成功。我没有意识到,仅仅为不同的记录道提及同一列会导致对条进行分组。你就在这里。在DOCS中,没有这样的例子。在这里,您可以考虑添加一个传说组,或者更好地连接2个数据帧。