plt.legend(['correlation', 'RMSE', 'IVS Score'])如何去掉边框
时间: 2023-09-26 13:06:57 浏览: 34
可以使用 `plt.legend(frameon=False, ...)` 来去掉图例边框,其中 `frameon=False` 表示不显示边框。例如:
```python
import matplotlib.pyplot as plt
# 绘制示例图
fig, ax = plt.subplots()
ax.plot([1,2,3],[4,5,6], label='correlation')
ax.plot([1,2,3],[5,6,7], label='RMSE')
ax.plot([1,2,3],[2,3,4], label='IVS Score')
# 设置图例并去掉边框
ax.legend(frameon=False)
plt.show()
```
运行后可以看到,图例边框已经被去掉了。
相关问题
plt.legend(['correlation', 'RMSE', 'IVS Score'])如何让图例横着摆放
可以使用`plt.legend()`中的`loc`参数和`bbox_to_anchor`参数来调整图例的位置和方向。具体实现方法如下:
```python
import matplotlib.pyplot as plt
# 假设有3条曲线
x = [1, 2, 3]
y1 = [1, 2, 3]
y2 = [1.5, 2.5, 3.5]
y3 = [2, 3, 4]
# 绘制3条曲线
plt.plot(x, y1)
plt.plot(x, y2)
plt.plot(x, y3)
# 设置图例位置和方向
plt.legend(['correlation', 'RMSE', 'IVS Score'], loc='upper center', bbox_to_anchor=(0.5, -0.1), ncol=3)
# 显示图形
plt.show()
```
其中,`bbox_to_anchor`参数用来设置图例的位置,可以根据需要进行调整。`ncol`参数用来设置图例的列数,这里设置为3,即3条曲线对应3列。通过这两个参数的组合,可以实现横向图例的效果。
plt.legend取消边框
要取消 plt.legend 的边框,您可以在调用 plt.legend 函数之前设置相应的属性。以下是一种常用的方法:
```python
import matplotlib.pyplot as plt
# 绘制散点图
plt.scatter(x, y, label='data')
# 获取当前的图例对象
legend = plt.legend()
# 取消边框
legend.get_frame().set_linewidth(0)
# 显示图形
plt.show()
```
在上述代码中,我们首先绘制了散点图,然后获取当前的图例对象 `legend`,通过 `legend.get_frame().set_linewidth(0)` 将边框宽度设置为 0,从而取消了边框的显示。最后调用 `plt.show()` 将图形显示出来。
希望这个方法对您有帮助!如果还有其他问题,请随时提问。