擅长:python、mysql、java
<p>问题是<code>marker</code>只能是单个值,而不是标记列表,就像<code>color</code>参数一样。</p>
<p>您可以按标记值进行分组,使x和y列表具有相同的标记并打印它们:</p>
<pre><code>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()
</code></pre>
<p>或者你可以画出每个点(我不建议这样做):</p>
<pre><code>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()
</code></pre>