当我将标签更改为数值时,我看不出如何使用pyplot.scatter()来显示图例。
也就是说,我转换了我的分类值'a','b','c',变成0,1,2 .
api.html#matplotlib.pyplot.scatter
下面是上面URL上的示例:
import numpy as np
import matplotlib.pyplot as plt
N = 50
x = np.random.rand(N)
y = np.random.rand(N)
colors = np.random.rand(N)
area = np.pi * (15 * np.random.rand(N))**2 # 0 to 15 point radii
plt.scatter(x, y, s=area, c=colors, alpha=0.5, cmap=cm.jet)
plt.show()哪种输出

一般情况下,我相信一个人会这样做:
example = plt.scatter(x, y, s=area, c=colors, alpha=0.5, cmap=cm.jet)
plt.legend(handles=[example])
plt.show()这不会输出一个图例,将图中的每一种颜色与数组中的数字相对应。
/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/matplotlib/axes/_axes.py:518: UserWarning: The handle <matplotlib.collections.PathCollection object at 0x1167d03c8> has a label of '_collection0' which cannot be automatically added to the legend.
'legend.'.format(handle, label))我如何输出一个图例,以显示哪个数字对应于数组值?
https://stackoverflow.com/questions/41877149
复制相似问题