matplotlib画图例默认的位置是在图中的各个角落,但有时图例位置会遮挡住图像而不符合我们的需求,需要对图例位置进行调整。代码如下:
plt.legend(loc=‘String or Number’, bbox_to_anchor=(num1, num2))
1.loc=‘String or Number’
这个参数来定位图例的大概位置,string参数包括
- best (自动找一个最好的位置,但有时不符合我们的预期)
- upper right(右上角)
- upper left (左上角)
- lower left (左下角)
- lower right (右下角)
- right (右,和center right位置一样)
- center left (中间偏左)
- center right (中间偏右)
- lower center(中间偏下)
- upper center(中间偏上)
- center(正中间)
其在表格中位置如下:
当然了参数也可以传入如图中的数字。
2.bbox_to_anchor=(num1, num2)
有时仅通过第一个参数还不能满足我们的预期,比如会出现图例堆叠在一起的情况,这时候就需要调整第二个参数。
- num1 用于控制 legend 的左右移动,值越大,越向右移动;
- num2 用于控制 legend 的上下移动,值越大,越向上移动。
3.举个栗子:
(1) plt.legend([‘图例’],loc=‘center’) 或 loc=10
(2) plt.legend([‘图例’],loc=‘center left’) 或 loc=6
再微调一下