也许这
example是有帮助的.
通常,图例中的项目与某种绘制对象有关.散点函数/方法将所有圆视为单个对象,请参阅:
print type(ax.scatter(...))
因此,解决方案是创建多个对象.因此,多次调用分散.
不幸的是,较新版本的matplotlib似乎没有在图例中使用一个矩形.因此,图例将包含非常大的圆圈,因为您增加了散点图对象的大小.
该图例功能作为一个markerscale的关键字参数来控制图例标记的大小,但似乎被打破了.
更新:
p1 = Rectangle((0, 0), 1, 1, fc="b")
p2 = Rectangle((0, 0), 1, 1, fc="g")
p3 = Rectangle((0, 0), 1, 1, fc="r")
legend((p1, p2, p3), ('proj1','proj2','proj3'))
要获得以前在情节中使用的颜色,请使用上述示例,如:
pl1, = plot(x1, y1, '.', alpha=0.1, label='plot1')
pl2, = plot(x2, y2, '.', alpha=0.1, label='plot2')
p1 = Rectangle((0, 0), 1, 1, fc=pl1.get_color())
p2 = Rectangle((0, 0), 1, 1, fc=pl2.get_color())
legend((p1, p2), (pl1.get_label(), pl2.get_label()), loc='best')
这个例子将会形成一个情节: