如何从df中读取值到plotly express sunburst中?
我有一个只有一行的csv文件,我想把它读进一个数据框(dataframe),然后导出到一个plotly express的Sunburst图表中。不过,我在把数据框里的值放到图表里时遇到了麻烦。
JobCompletion.csv:
总数,完成,未成功,失败,超时,取消
188844,166718,22124,1018,20,21086
df = pd.read_csv("JobCompletion.csv")
df
Total Completed Unsuccessful Failed Timeout Cancelled
0 188844 166718 22124 1018 20 21086
我的“名称”总是像上面那样,所以我可以把它们直接写成变量:
categories = ["Total","Completed","Unsuccessful","Failed","Timeout","Cancelled"]
parent = ["","Total","Total","Unsuccessful","Unsuccessful","Unsuccessful"]
如果我把一组值写死在代码里:
value = [18844,166718,22124,1018,20,21086]
那么下面的代码就可以用来生成我的Sunburst图:
fig = px.sunburst(df,
names = categories,
parents = parent,
values = value, # here's where I need help
branchvalues = 'total')
但是,我需要动态地从我的csv文件或数据框中读取这些值到图表里。由于我对plotly的基础知识有限,搞不清楚怎么从数据框中提取值。任何帮助都非常感谢。
1 个回答
0
你可以通过 df.loc[0, :].values.tolist()
这个命令把数据表的第一行提取出来,结果会以列表的形式呈现。如果你想获取其他行的数据,只需要把0改成你想要的行号就可以了。
如果你想获取列名,而不是用固定的列表,你可以使用 df.columns.tolist()
这个命令。