问题是作为
marker参数只能是单个值,而不能是标记列表
color。
您可以按标记值进行分组,以使x和y列表具有相同的标记并进行绘制:
xs = [[1, 2, 3], [4, 5, 6]]ys = [[1, 2, 3], [4, 5, 6]]m = ['o', 'x']for i in range(len(xs)): plt.scatter(xs[i], ys[i], marker=m[i])plt.show()
或者,您可以绘制每个点(我不建议这样做):
x=[1,2,3,4,5,6]y=[1,3,4,5,6,7]m=['k','l','l','k','j','l']mapping = {'j' : 'o', 'k': 'x', 'l': '+'}for i in range(len(x)): plt.scatter(x[i], y[i], marker=mapping[m[i]])plt.show()


