【发布时间】:2021-03-31 18:41:57
【问题描述】:
如何使用 Plotly 在 Pandas DataFrame 中制作包含频率分布数据的 CDF 图?假设以下玩具数据
value freq
1 3
2 2
3 1
所有示例都展示了如何使用如下所示的原始数据进行操作:
value
1
1
1
2
2
3
我可以像这样用 Pandas .plot 做到这一点(但我更愿意用 Plotly 做同样的事情):
stats_df = df
stats_df['pdf'] = stats_df['count'] / sum(stats_df['count'])
# calculate CDF
stats_df['cdf'] = stats_df['pdf'].cumsum()
stats_df = stats_df.reset_index()
# plot
stats_df.plot(x = 'n_calls',
y = ['pdf', 'cdf'],
logx = True,
kind = 'line',
grid = True)
如果您想使用玩具数据集进行演示,这里有一个:https://raw.githubusercontent.com/plotly/datasets/master/2010_alcohol_consumption_by_country.csv
参考资料:
【问题讨论】:
标签: python plotly data-visualization plotly-python