尝试使用 Plotly 使用 pandas Dataframe 从聚合数据创建构面图

Trying to create a facet graph from aggregated data using a pandas Dataframe using Plotly

我想使用 Plotly 创建构面图,但是我使用的代码一直返回属性错误,我不确定如何在代码中处理 Dataframe

所以我已经能够聚合数据以获取特定细节,并且我可以使用循环使用 Matplotlib 打印出多个图表。

数据如下:

Metric  Count Collection_Start_Date Collection_End_Date  frequency  \
1   PAIRED TRADES     15            2019-06-25          2019-02-01          7   
3   PAIRED TRADES     19            2019-06-25          2019-01-01          7   
5   PAIRED TRADES     90            2019-06-25          2019-03-01          7   
7   PAIRED TRADES     19            2019-06-25          2019-02-01          7   
9   PAIRED TRADES     86            2019-06-25          2019-01-01          7   
11  PAIRED TRADES     88            2019-06-25          2019-03-01          7   
13  PAIRED TRADES     57            2019-06-25          2019-02-01          7   
15  PAIRED TRADES      9            2019-06-25          2019-01-01          7   
17  PAIRED TRADES     98            2019-06-25          2019-03-01          7   
19  PAIRED TRADES     89            2019-06-25          2019-02-01          7   
21  PAIRED TRADES     28            2019-06-25          2019-01-01          7   
23  PAIRED TRADES     92            2019-06-25          2019-03-01          7   
25  PAIRED TRADES     57            2019-06-25          2019-02-01          7   
27  PAIRED TRADES     87            2019-06-25          2019-01-01          7   
29  PAIRED TRADES     55            2019-06-25          2019-03-01          7   
31  PAIRED TRADES     95            2019-06-25          2019-02-01          7   
33  PAIRED TRADES     17            2019-06-25          2019-01-01          7   
35  PAIRED TRADES     39            2019-06-25          2019-03-01          7   

df = pd.read_csv(...)

df = df.query('Metric == "PAIRED TRADES"')

print(df)

fig = px.df.tips()

我不断收到属性错误:

module 'plotly_express' has no attribute 'df'

它指的是 fig =px.df.tips()

您将 facet plot docs 误解为 tips 是在 plotly_express 模块中维护的 built-in 数据集,可能包含用于演示目的。

import plotly.express as px

tips = px.data.tips()     # BUILT-IN DATASET
fig = px.scatter(tips, x="total_bill", y="tip", color="smoker", facet_col="sex")
fig.show()

根据您的需要,您不需要演示数据集。只需在 data 参数中分配您的数据框。下面用散点图演示:

df = df.query('Metric == "PAIRED TRADES"')

fig = px.scatter(df, x="Collection_End_Date", y="Count", color="smoker", facet_col="Entity")
fig.show()