情节:pandas 数据帧错误:模块 'plotly.express.data' 没有属性

Plotly: Error with pandas dataframe: module 'plotly.express.data' has no attribute

首先,如果这是一个愚蠢的问题,我深表歉意,这是我第一次使用 plotly。我正在尝试使用我的 'actor' 数据框制作旭日图,但是当我尝试这样做时出现属性错误:

错误:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-32-2e5f13ef3c16> in <module>
----> 1 px.data.actor

AttributeError: module 'plotly.express.data' has no attribute 'actor'

截图:

我在顶部导入了以下包:

import plotly.graph_objects as go
import plotly.io as pio
import plotly.express as px

谁能看出我错在哪里?提前致谢!

错误看起来不言自明。我不太确定为什么需要在代码中调用 .actor() 方法。 px.data 将加载一些属于库的数据集。其中一些包括 iris, tips, wind, ... 因为您已经有了数据框,所以这个调用是不必要的。

Here 是代码中的详尽列表。

只需删除该行即可。

您似乎假设 px.data.actor 会以某种方式使 您的 数据框 actor 可用于 plotly .我可以理解为什么 px.data 会让 一些 内置数据集可供您使用,例如 px.data.carshare():

    centroid_lat    centroid_lon    car_hours   peak_hour
0   45.471549       -73.588684      1772.750000 2
1   45.543865       -73.562456      986.333333  23
2   45.487640       -73.642767      354.750000  20
3   45.522870       -73.595677      560.166667  23
4   45.453971       -73.738946      2836.666667 19

[...]   

244 45.547171       -73.556258      951.416667  3
245 45.546482       -73.574939      795.416667  2
246 45.495523       -73.627725      425.750000  8
247 45.521199       -73.581789      1044.833333 17
248 45.532564       -73.567535      694.916667  5

要以相同的方式检查所有可用的数据集,只需 运行 dir(px.data) 即可:

['absolute_import',
 'carshare',
 'election',
 'election_geojson',
 'gapminder',
 'iris',
 'tips',
 'wind']

但是由于 actor 已经可供您使用(因为您可能已经自己制作了它),因此根本不需要行 px.data.actor()

P.S

运行 px.express.carshare() returns 一个 pandas 数据帧。要继续使用此数据框,最好将其分配给这样的变量:df_cs = px.data.carshare()