在画一些曲线图(linecharts)时,常常会出现多条曲线同时画在一张图上面,这时候就需要对不同的曲线进行不同的标注,以使读者能够清晰地知道每条曲线代表的含义。当你画很少的几条曲线时,这时画图命令中自动产生的legend能够基本满足你的需要,此时,你不需要做什么;但当你将很多个曲线画在一张图上时,自动产生的legend矩形框往往会覆盖住已经画出来的曲线,很不美观,这时你就需要写专门的代码对legend的位置进行精确的控制,而不能再依靠系统帮你自动控制了。
本文所讲的就是要解决如何在一张图上画多条曲线时,如何控制legend的位置。当你采用Python中的matplotlib包画图时,采用下面的代码即可控制legend的位置:
1
|
plt.legend(loc = 'upper center' , bbox_to_anchor = ( 0.6 , 0.95 ),ncol = 3 ,fancybox = True ,shadow = Tru
|
上面bbox_to_anchor被赋予的二元组中,第一个数值用于控制legend的左右移动,值越大越向右边移动,第二个数值用于控制legend的上下移动,值越大,越向上移动。上述示例代码产生的legend样例如下:
注:matlab中也可以完成legend位置的调整,也可以手工调整。
总结
以上就是本文关于matplotlib中legend位置调整解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
原文链接:http://blog.csdn.net/RobertChenGuangzhi/article/details/49719467