Python 基于分类类的matplotlib绘图中的提及标签

Python 基于分类类的matplotlib绘图中的提及标签,python,matplotlib,plot,Python,Matplotlib,Plot,我想把标签贴在绘图上。我的代码是 import matplotlib.pyplot as plt x1 = [1,2,3,4,5,6,7,8,9,10] x2 = [7,3,2,4,1,4,3,5,8,4] y = [0,1,1,0,1,0,0,1,0,1] plt.scatter(x1,x2,c=y) plt.show() 输出: 我想把图例标签0和1放在图表上。标签是假的还是真的好 如果答案没有任何迭代,我们将不胜感激。原则上的问题,例如或显示如何获得散点图的图例 由于您明确要求不进行

我想把标签贴在绘图上。我的代码是

import matplotlib.pyplot as plt
x1 = [1,2,3,4,5,6,7,8,9,10]
x2 = [7,3,2,4,1,4,3,5,8,4]
y  = [0,1,1,0,1,0,0,1,0,1]
plt.scatter(x1,x2,c=y)
plt.show()
输出:

我想把图例标签01放在图表上。标签是假的还是真的好


如果答案没有任何迭代,我们将不胜感激。

原则上的问题,例如或显示如何获得散点图的图例

由于您明确要求不进行迭代,因此您当然可以用映射替换迭代

import matplotlib.pyplot as plt
import numpy as np

x1 = [1,2,3,4,5,6,7,8,9,10]
x2 = [7,3,2,4,1,4,3,5,8,4]
y  = [0,1,1,0,1,0,0,1,0,1]
plt.scatter(x1,x2,c=y, cmap="viridis")

yunique = np.unique(y).astype(float)
handles = list(map(lambda i: plt.plot([], 
                color=plt.cm.viridis(i),marker="o", ls="")[0], yunique))
labels = list(map(str, yunique.astype(bool)))
plt.legend(handles=handles, labels=labels)

plt.show()


请注意,这是一个纯粹的学术示例,使用for循环要容易得多

现在还不清楚你想把什么样的标签贴在哪里。你是说你想把每个黄点都贴上一个1,把每个黑点都贴上一个0吗?试着检查一下这些链接——我想让绘图图例显示o-true和o-false,其中o填充了受人尊敬的颜色