Python 单行散点图标签-Matplotlib

Python 单行散点图标签-Matplotlib,python,matplotlib,plot,legend,Python,Matplotlib,Plot,Legend,可以在Matplolib中同时设置所有标签吗 例如,我有一段代码来绘制散点图: cmap = plt.get_cmap('Set1') colors = [cmap(i) for i in numpy.linspace(0, 1, simulations+1)] plt.figure(figsize=(7, 7)) plt.scatter(coords[:, 0], coords[:, 1], marker='o', c=colors, s=50, edgecolor='None') plt.

可以在Matplolib中同时设置所有标签吗

例如,我有一段代码来绘制散点图:

cmap = plt.get_cmap('Set1')
colors = [cmap(i) for i in numpy.linspace(0, 1, simulations+1)]

plt.figure(figsize=(7, 7))
plt.scatter(coords[:, 0], coords[:, 1], marker='o', c=colors, s=50, edgecolor='None')
plt.legend(loc='lower left',)
其中
simulations=7
coords
是一个具有形状(7,2)的numpy.array

这给了我一个这样的情节:

如果我将最后一行更改为:

plt.scatter(coords[:, 0], coords[:, 1], marker='o', c=colors, s=50, edgecolor='None', label=range(simulations))
plt.legend(loc='lower left')
我得到:

我想知道我是否需要做一个循环来做分散,并设置每个标签,如果有一些方法可以一次完成所有的事情


谢谢。

我不知道如何使用散点图。但是如果你想要不同的标签,我不确定使用
分散
而不是
绘图
是否有优势

这个怎么样

import numpy as np
import matplotlib.pyplot as plt

n = 10
coords = np.random.random((n,2))

cmap = plt.get_cmap('Set1')

for i, (x, y) in enumerate(coords):
    plt.plot(x, y, 'o', color=cmap(i/float(n)), label='%i'%i, ms=9, mec='none')

plt.axis((-0.5, 1.5, -0.5, 1.5))
plt.legend(loc='lower left', numpoints=1, frameon=False)
plt.show()