我有一个数据帧df,我用它在同一个x轴上生成两个条形图。我不想把这些值显示为条形图,而是希望有一条适合条形图形状的曲线。一、 它应该有点像高斯或正态分布拟合,但我想保持x轴和y轴相同,而不是显示频率。我还需要拟合从0开始,并且是任何负值。我该怎么做?我想scipy curve_fit函数可能有用,或者sns.distplot?df
size a b
0 0.000000 6.20405
1 0.000000 9.262046
2 2.51524 14.28944
3 6.750392 12.756672
4 9.893210 9.733124
5 10.302983 6.690388
6 11.302383 4.86942
7 8.024279 8.32051
8 4.39434 7.228450
9 2.05516 3.767661
x = df['a']
y = df['b']
n = 10
fig, ax = plt.subplots(1)
bar_width = 0.4 # default: 0.8
bar_locations = np.arange(n)
ax.bar(bar_locations, x, bar_width)
ax.bar(bar_locations - bar_width, y, bar_width, color='r')
fig.show()
更新:
^{pr2}$
如何清除这个数字a)强制kde fit不为任何负数(数据从0开始!)以及b)移除黑线和绿/蓝条?