为啥画不出来啊,照着第二个图写的

为啥画不出来啊,照着第二个图写的
为啥画不出来啊,照着第二个图写的

img

img

我不知道你是否要这样的结果,但是你的fwgt['hgt']我是不能理解的,你的标签里没有hgt这一项,下面我大概做了一下'Whole'的分布:

import numpy as np
import pandas as pd
import seaborn as sns
from scipy.stats import norm
import matplotlib.pyplot as plt


feature_names =['sex','Length','Diam','Height','Whole','Shucked','Viscera','Shell','Rings']
abalone_data = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/abalone/abalone.data', names = feature_names)
df=abalone_data

mwgt = df[df['Whole'] == 1]
fwgt = df[df['Whole'] == 0]
fwgtmean = fwgt['Whole'].mean()
fwgtsd = fwgt['Whole'].std()

fght_hist = sns.distplot(df['Whole'], norm_hist=True, kde=True, color='purple', bins=110)
x = np.arange(0, 1)
y = norm.pdf(x, loc=fwgtmean, scale=fwgtsd)
fght_hist.plot(x, y, 'purple')
plt.show()

img

如果你觉着有用,请采纳,谢谢!

报错说数值引起的错误。看一下前文你测试的数据

你出错的应该是x = np.arange(0, 1),也就是说x只有一个值,还是0, 如果两个图的数据量相同,你改正这个:

x = np.arange(0, 51)

也许就可以。
如果有帮助,请采纳,谢谢!

哈喽,日志说distplot将被弃用,让你用histplot哦

代码

import numpy as np
import pandas as pd

feature_names =['sex','Length','Diam','Height','Whole','Shucked','Viscera','Shell','Rings']
abalone_data = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/abalone/abalone.data', names = feature_names)
df=abalone_data
df.head()

mwgt = df[df['Whole'] == 1]
fwgt = df[df['Whole'] == 0]

fwgtmean = fwgt['Whole'].mean()
fwgtsd = fwgt['Whole'].std()

import seaborn as sns
from scipy.stats import norm
import matplotlib.pyplot as plt
%matplotlib inline 
plt.rcParams['figure.figsize'] = (6, 6)

fwgt_hist = sns.distplot(fwgt['hgt'], norm_hist = True, kde = False, color = 'purple', bins = 8)
x = np.arange(0,1)                                                  
y = norm.pdf(x, loc = fwgtmean, scale = fwgtsd)                                                         
fwgt_hist.plot(x, y, 'purple');