如何使用带python的plotly express将多个图形添加到单个选项卡

2024-05-06 20:54:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个脚本,它生成了5个不同的graphs,我想在一个web page中显示它。 我将python与plotly express一起使用,并定义pio.renderers.default = "browser"。 问题是每个图表都在一个新选项卡中打开,我只想要一个可以共享的选项卡。 我的脚本包含两个独立的数据帧:

import pandas as pd
import plotly.express as px
import plotly.io as pio
pio.renderers.default = "browser"

df1=pd.read_csv('data1.csv')
df2=pd.read_csv('data2.csv')

fig = px.bar(df1,x1, y1,color='a',barmode='group')
fig.show()   
fig = px.line(df2,x2, y2,color='b')
fig.show()   

Tags: csvimportbrowser脚本defaultasfigplotly
1条回答
网友
1楼 · 发布于 2024-05-06 20:54:51

好的,您需要使用plotly.subplots.make_subplots。我没有您的数据,因此我将在以下代码中使用来自plotly的简单数据:

import plotly.express as px
from plotly.subplots import make_subplots

df = px.data.gapminder().query("country == 'Canada'")
fig1 = px.bar(df, x='year', y='pop')
fig2 = px.line(df, x="year", y="lifeExp", title='Life expectancy in Canada')

fig = make_subplots(rows=2, cols=1, shared_xaxes=False)
fig.add_trace(fig1['data'][0], row=1, col=1)
fig.add_trace(fig2['data'][0], row=2, col=1)
fig.show()

这将生成以下图表: enter image description here

旁注:Plotly.express默认情况下在浏览器中显示该图,您不必指定它

相关问题 更多 >