python的matplotlib中根据分类选取不同标记

正在做聚类问题,在聚类之后想根据不同的label,采用圆圈,x,+,三角形等符号表示不同的类别画出,求帮助

我一般都是用不同颜色+不同形状加以区分,比如:

import matplotlib.pyplot as plt

#假设categories存了所有类别的数据
#假设cate_names 存了所有类别的名字或者标号
colors = ['r', 'g', 'b', 'm', 'k']    #红,绿,蓝,酒红,黑
markers = ['o', 'x', '+', '^', 'v']   #圆圈, x, +, 正三角, 倒三角
styles = [x+y for x in colors for y in markers] #这样就有5*5=25中不同组合
for i in range(categories):
  data = categories[i]
  plt.show(range(1, len(data)+1), data, styles[1], label=cate_names[i])
plt.lengend()
plt.show()

matplotlib 支持的marker: http://matplotlib.org/api/markers_api.html

matplotlib 支持的color : http://matplotlib.org/api/colors_api.html