此代码块输出我的所有 10 个协方差矩阵,并绘制 2x2 矩阵中的每个点。
for i in range(10):
columns = datawithoutmean[:, i*2:i*2 + 2]
cov = numpy.cov(columns.T)
print(cov)
matplotlib.pyplot.scatter(cov[:,0], cov[:,1], c = 'r', marker = '.')
matplotlib.pyplot.show()
如何专门输出每个协方差矩阵的非对角线值并使用 pyplot 绘制它?
作为参考,第一个协方差矩阵如下所示:
[[10.34020531 -0.01203439]
[-0.01203439 2.06085007]]
我想绘制非对角线(两列之间的协方差),所以在这种情况下它将是-0.01203439。
编辑:我发现我可以像这样得到非对角线:好的,如果我这样做,它将输出两列之间的协方差值:
for i in range(10):
columns = datawithoutmean[:, i*2:i*2 + 2]
cov = numpy.cov(columns.T)
off_diagonal = cov[0][1] # covariance value
但是如何使用 pyplot 在散点图中绘制这些值?