在使用python绘制散点图时,有时我们需要将点分成若干类,每一类点用不同的颜色加以标记。当点的类别太多时,仅仅使用颜色则难以在视觉上产生明显的区分度,这时可以将点的形状也用于区分。
因此博主在函数color_shape_list()中共使用了11种具有明显区分度的颜色和7种具有明显区分度的形状,总共组合出了77种“颜色-形状”组合,并将这些组合绘制于图中供参考。
import matplotlib.pyplot as plt
def color_shape_list():
color_list = ['black', 'red', 'gold', 'green', 'blue', 'silver', 'pink', 'peru', 'lawngreen', 'cyan', 'darkviolet']
shape_list = ['o', 'P', '^','s', '*', 'X', 'D']
CS = []
for shape in shape_list:
for color in color_list:
CS.append((color, shape))
return CS
if __name__ == '__main__':
CS = color_shape_list()
t = 0
for y in range(7,0,-1):
for x in range(11):
plt.scatter(x, y, color=CS[t][0], marker=CS[t][1], s=200)
t += 1
plt.show()