Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用matplotlib在现有打印上打印质心值_Python_Numpy_Matplotlib_Plot_Scipy - Fatal编程技术网

Python 使用matplotlib在现有打印上打印质心值

Python 使用matplotlib在现有打印上打印质心值,python,numpy,matplotlib,plot,scipy,Python,Numpy,Matplotlib,Plot,Scipy,如何在绘图上绘制下面计算的质心值 import numpy as np, matplotlib.pyplot as plt from scipy.cluster.vq import kmeans, vq data = np.array(np.random.rand(100)) plt.plot(data, 'ob') centroids, variances= kmeans(data,3,10) indices, distances= vq(data,centroids) print

如何在绘图上绘制下面计算的质心值

import numpy as np, matplotlib.pyplot as plt
from scipy.cluster.vq import kmeans, vq

data = np.array(np.random.rand(100))

plt.plot(data, 'ob')


centroids, variances= kmeans(data,3,10)
indices, distances= vq(data,centroids)

print (centroids)
[ 0.82847854  0.49085422  0.18256191]

plt.show()

可以使用表示质心的水平线进行打印:

plt.plot([0, len(data)], [centroids[0]]*2, lw=1.)
plt.plot([0, len(data)], [centroids[1]]*2, lw=1.)
plt.plot([0, len(data)], [centroids[2]]*2, lw=1.)

编辑:或按照@nordev的建议:

plt.hlines(centroids, xmin=0, xmax=len(data), lw=1.)

您可以使用表示质心的水平线进行打印:

plt.plot([0, len(data)], [centroids[0]]*2, lw=1.)
plt.plot([0, len(data)], [centroids[1]]*2, lw=1.)
plt.plot([0, len(data)], [centroids[2]]*2, lw=1.)

编辑:或按照@nordev的建议:

plt.hlines(centroids, xmin=0, xmax=len(data), lw=1.)

您也可以使用更直观的。您也可以使用更直观的。