使用Python在Plotly Express上按变量ID细分

问题描述 投票:1回答:1

我有这样的情节:

var_names = [i for i in test_df.variable.unique()]
var_names.sort()

fig = px.scatter(test_df, x='date', y='value', color='variable', category_orders={'variable': var_names},
                template="ggplot2", title='Median of access',
                 labels={'value': 'Median of access on the week', 'date': 'Week'}
                 ).update_traces(mode='markers+lines')
fig.show()

我的数据框是:

test_df = pd.DataFrame({
        'ID':list('aabdee'),
        'date':['2020-03-22', '2020-03-22', '2020-03-29', '2020-03-22','2020-03-22', '2020-03-29'],
         'B':[1,0.5,4,5,5,4],
         'C':[7,8,9,4,2,3],
         'D':[1,3,1,7,1,1],
         'E':[5,3,6,9,2,4]
})
test_df = test_df.melt(['ID', 'date']).  

我只想运行一次代码并根据ID构建不同的子图,就像下面图片中的每个图形都对应于特定ID的变量一样。 我尝试使用文档上的“添加跟踪”,但是如果执行此操作,则每次按ID过滤时,我都必须复制并粘贴代码。

enter image description here非常感谢!

python plot plotly
1个回答
0
投票

最终非常简单,问题在于,plotly express的文档不太容易找到。

因此,您可以将变量facet_col ='ID'放在px.scatter(...)上,它可以工作:)。

© www.soinside.com 2019 - 2024. All rights reserved.