gpt4 book ai didi

python - 如何制作大型二维散点图的等高线/密度图

转载 作者:太空宇宙 更新时间:2023-11-03 20:44:30 56 4
gpt4 key购买 nike

我的散点图过于拥挤,我正在尝试创建等高线图或密度图,以查看数据中是否存在任何不同的群体。我尝试了以下代码,但收到错误:

too many values to unpack (expected 2)

我的代码是:

x = CDM_300[:,[1]]
y = CDM_300[:,[2]]

# Evaluate a gaussian kde on a regular grid of nbins x nbins over data extents
nbins=300
k = kde.gaussian_kde([x,y])
xi, yi = np.mgrid[x.min():x.max():nbins*1j, y.min():y.max():nbins*1j]
zi = k(np.vstack([xi.flatten(), yi.flatten()]))

# Make the plot
plt.pcolormesh(xi, yi, zi.reshape(xi.shape))
plt.show()

# Change color palette
plt.pcolormesh(xi, yi, zi.reshape(xi.shape), cmap=plt.cm.Greens_r)
plt.show()

CDM_300 是一个 (23800, 3) 数组,如果我尝试 np.meshgrid 数据,我的笔记本电脑就会崩溃。

最佳答案

问题似乎是由您对数据建立索引的方式引起的。当您执行 [:, [1]] 时,数据的形状变为 (23800, 1) 并且每个元素本身就是一个数组。

使用以下索引,在第二个索引周围添加额外的[]

x = CDM_300[:, 1]
y = CDM_300[:, 2]

关于python - 如何制作大型二维散点图的等高线/密度图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56684041/

56 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com