【发布时间】:2021-09-19 02:26:52
【问题描述】:
我想在 Jupyter 笔记本中为数据集绘制直方图,其中最小值为 ~8e+01,最大值为 6e+07,平均值 ~8e+05,中值 ~1e+05,众数 ~2e +03。我还想在图表中显示集中趋势线。这是我的代码:
plt.figure(figsize=(7,5))
sns.kdeplot(dataset, shade=True)
plt.vlines(x=np.mean(dataset), ymin=0, ymax=1, color='blue', linestyle='--')
plt.vlines(x=np.median(dataset), ymin=0, ymax=1, color='brown', linestyle='--')
plt.vlines(x=scp.mode(dataset)[0][0], ymin=0, ymax=1, color='red', linestyle='--')
plt.legend(['Dataset', 'Mean', 'Median', 'Mode'], fontsize=12)
plt.show()
但是结果图是:
我在网上搜索过,但我找到的所有答案要么是添加我已经完成的plt.show(),要么是添加%matplotlib inline,这仅适用于IPython notebook。我想不出图表无法正确显示数据的另一个原因。
测试数据集:
596819.4
642682.4
619509.33
649141.25
545800.05
572019.8
718330.48
830967.23
742220.67
656892.03
1005603.78
653560.14
657444.04
696281.81
709268.62
924993.61
823623.36
734721.29
783935.36
882754.72
821523.45
800603.23
772926.12
800194.34
850931.58
【问题讨论】:
标签: python matplotlib seaborn