问题遇到的现象和发生背景
我在运行程序时在网上查看别人的代码,但运行时窗口却无法显示数据,这个是动态显示二分k均值的运行过程,包括每次分簇的不同情况以不同的颜色呈现出来
问题相关代码,请勿粘贴截图
def show(dataMat, centList, cluster):
plt.clf() # 清空画布
plt.xlim(95, 170) # 设置坐标轴的范围
plt.ylim(40, 95)
m = shape(dataMat)[0] # 数据量
n = shape(centList)[0] # 质心数量
date_shape = ['^', 'v', 'o', 's', 'p'] # 数据点形状
date_color = ["r", 'g', 'b', 'y', 'm'] # 数据点颜色
for i in range(m): # 遍历数据
k = int(cluster[i, 0]) # 将簇类型改成int
print(date_shape[k])
plt.scatter(dataMat[i, 0], dataMat[i, 1], c=date_color[k], marker=date_shape[k], alpha=0.2)
for j in range(n): # 显示质心点
plt.scatter(centList[j, 0], centList[j, 1], c=date_color[j], marker='x', alpha=1.0)
plt.pause(0.1)
运行结果及报错内容
我的解答思路和尝试过的方法
我在方法里检验过scatter函数内各项的值,都很正常,也符合scatter的语句格式
我想要达到的结果
希望能够让表中显示散点数据