例1
# -*- coding:utf-8 -*-import numpy as npimport matplotlib.pyplot as pltnp.random.seed(1) # 产生相同的随机数X = np.random.randn(1, 10)Y = np.random.randn(1, 10)print(X,Y)label = np.array([1,1,0,0,0,0,0,1,1,1])plt.scatter(X.reshape(10), Y.reshape(10), c =label, s = 180, cmap = plt.cm.Spectral)plt.show()
plt.scatter(X.reshape(10), Y.reshape(10), c =label, s = 180, cmap = plt.cm.Spectral)
中的cmap = plt.cm.Spectral是什么意思?
cmap = plt.cm.Spectral实现的功能是给label为1的点一种颜色,给label为0的点另一种颜色。
例2
# label有三种不同的取值X = np.array(range(1, 7))Y = np.array(range(1, 7))label = (1,1,0,0,-1,-1)plt.scatter(X.reshape(6), Y.reshape(6), c = label, s = 180, cmap = plt.cm.Spectral)plt.show()
可以看到3个不同的类别被赋予了3种不同的颜色。也可以通过plt.cm.Spectral(parameters)中的parameters来指定生成的颜色种类,例如plt.cm.Spectral(np.arange(5))将生成5中不同的颜色,而在例子2中,c = label代替了参数parameter的作用。
例3
colors = plt.cm.Spectral(np.arange(5))print("5种不同的颜色: ",colors)
5种不同的颜色: [[ 0.61960787 0.00392157 0.25882354 1. ][ 0.62806615 0.01330258 0.26082277 1. ][ 0.63652444 0.02268358 0.26282201 1. ][ 0.64498272 0.03206459 0.26482124 1. ][ 0.653441 0.0414456 0.26682047 1. ]]
# 生成两种颜色,其中1,2,5,6是一种,3,4是一种colors = plt.cm.Spectral([1,1,0,0,1,1])print(colors)
[[ 0.62806615 0.01330258 0.26082277 1. ][ 0.62806615 0.01330258 0.26082277 1. ][ 0.61960787 0.00392157 0.25882354 1. ][ 0.61960787 0.00392157 0.25882354 1. ][ 0.62806615 0.01330258 0.26082277 1. ][ 0.62806615 0.01330258 0.26082277 1. ]]