【问题标题】:2D kernel density e. in python - x axis crowded and shrinked二维核密度 e。在 python - x 轴拥挤和缩小
【发布时间】:2013-10-27 17:43:42
【问题描述】:

我有一个x,y 点分布,我通过scipy.stats.gaussian_kde. 获得KDE

kmsmins 都是一个列表,其中的浮点值表示行驶里程所需的时间。

这些值分布在:

  • mins: [3.48996296296 - 317.678638298]
  • kms: [0.180707205317 - 8086.94362983]

在结果中,我将得到一条又高又窄的线——y 值正常显示,但 x 轴非常窄且缩小(刻度重叠)。有人可以指出如何使 x 轴更加伸展吗?

这是我生成情节的代码:

xmin = min(mins)
xmax = max(mins)
ymin = min(kms)
ymax = max(kms)

X, Y = np.mgrid[xmin:xmax:1000j, ymin:ymax:100j]
positions = np.vstack([X.ravel(), Y.ravel()])
values = np.vstack([mins, kms])
kernel = stats.gaussian_kde(values)
Z = np.reshape(kernel(positions).T, X.shape)

fig = plt.figure()
ax = fig.add_subplot(111)
ax.imshow(np.rot90(Z), cmap=plt.cm.gist_earth_r, extent=[xmin, xmax, ymin, ymax])
ax.plot(mins, kms, 'k.', markersize=2)
ax.set_xlim([xmin, 200])
ax.set_ylim([ymin, ymax])

plt.show()

这是情节本身:

【问题讨论】:

  • 如果您可以提供图片链接,我可以为您编辑您的问题。
  • 非常感谢,您通过这种方式为我节省了大量的解释。 :) link

标签: python numpy matplotlib kernel-density probability-density


【解决方案1】:

您可以通过以下方式将绘图的纵横比从 1:1 更改为自动

ax.axis('normal')

【讨论】:

    猜你喜欢
    • 2019-01-20
    • 1970-01-01
    • 2019-04-05
    • 1970-01-01
    • 2021-06-24
    • 1970-01-01
    • 2015-07-20
    • 1970-01-01
    • 2020-09-20
    相关资源
    最近更新 更多