2.2.2 分析数据:使用Matplotlib创建散点图

1 import kNN
 2 import matplotlib
 3 import matplotlib.pyplot as plt
 4 fig = plt.figure()      #创建图像
 5 ax = fig.add_subplot(111)    #添加子图像(1行1列中的第一个)
 6 ax.scatter(datingDataMat[:,1],datingDataMat[:,2],15*array(datingLabels),15*array(datingLabels))
 7 #15*array(datingLabels),15*array(datingLabels) 分别对应于scatter的s(四则)
 8 #15*array(datingLabels),15*array(datingLabels) 分别对应于scatter的s(size)和c(color)参数。这两个参数对应于前面x,y相应坐标点,即每个坐标点上的size和color参数都有对应值。
 9 plt.show()
10 #由于将标签列的值放大15倍,这样可以将本来的标签值size和color差距拉大,便于在图上观察。

 

ax.scatter(datingDataMat[:,1],datingDataMat[:,2],100*array(datingLabels),15*array(datingLabels))

 

ax.scatter(datingDataMat[:,1],datingDataMat[:,2],100*array(datingLabels),15*array(datingLabels))

 

ax.scatter(datingDataMat[:,1],datingDataMat[:,2],300*array(datingLabels),15*array(datingLabels))
plt.show()

 

 

plt.show() 运行之后,显示图片。

后续改变scatter()参数,每执行一次ax.scatter(), 原散点图中自动增加相应的点,不需要再执行plt.show()。

如果要创建新图片,需要再次运行plt.figure().

如果要在同一副图中创建两个subplot,可以更改add_subplot的参数,如下:

 1 import kNN
 2 import matplotlib
 3 import matplotlib.pyplot as plt
 4 fig = plt.figure()      #创建图像
 5 ax = fig.add_subplot(121)    #添加子图像(1行2列中的第一个)
 6 ax.scatter(datingDataMat[:,1],datingDataMat[:,2],15*array(datingLabels),15*array(datingLabels))
 7 plt.show()
 8 
 9 ax = fig.add_subplot(122)    #添加子图像(1行2列中的第二个)
10 ax.scatter(datingDataMat[:,0],datingDataMat[:,1],15*array(datingLabels),15*array(datingLabels))
11 plt.show()

posted @ 2021-07-19 16:57  xinxinmama  阅读(149)  评论(0)    收藏  举报