在Python中制作散点图时如何为数据添加标签

4
我希望能够在Python中标记我绘制的每个点,但是我没有找到一个合适的方法来实现它。
假设我有两个包含n个元素的列表a和b,我可以按照以下方式打印它们:
    plt.figure()
    plt.grid()
    plt.plot(a , b , 'bo')
    plt.show()

我希望将“变量k”标记在每个点上,其中k的范围从1n。谢谢您的时间。

那是为轴设置名称。我认为他想标记每个单独的点。 - gold_cy
你尝试过什么?请,请一定要阅读[提问]和[最小完整可复现示例]。Stack Overflow有非常高的质量标准。 - noɥʇʎԀʎzɐɹƆ
你说得对,Dmitry Polonskiy,那正是我想做的。 - apaillarse
2个回答

1
您可以使用“label”绘图参数。
x = np.random.random(3)
y = np.random.random(3)
z = np.arange(3)
colors = ["red", "yellow", "blue"]
c = ["ro", "yo", "bo"]

for i in z:
    plt.plot(x[i], y[i], c[i], label=colors[i] + ' ' + str(i))
plt.legend()

enter image description here


1
这是我找到的最好的方法:

在此处:

plt.figure()
plt.scatter(a,b)
labels = ['Variable {0}'.format(i+1) for i in range(n)]
for i in range (0,n):
    xy=(a[i],b[i])
    plt.annotate(labels[i],xy)
plt.plot()

更多信息:Matplotlib:如何为散点图放置单独的标签


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接