IIUC, вам нужно построить гистограмму distance
для обоих значений name
на одном графике.
import matplotlib.pyplot as plt
df = pd.DataFrame({'name':['Peter', 'Sam', 'Peter', 'Sam', 'Sam', 'Peter'],
'distance':[13, 14, 15, 12, 13, 14]})
for name in df['name'].unique():
plt.hist(df.loc[df['name']==name, 'distance'], label=name)
plt.legend();
![enter image description here](https://i.stack.imgur.com/qY1gJ.png)
UPDATE:
Как указано в комментариях к OP, их можно нарисовать без цикла for.
df.groupby('name').distance.plot.hist()
df.groupby('name').distance.plot.kde()
![enter image description here](https://i.stack.imgur.com/uTOHy.png)