Matplotlib Legend边框去除:详细指南与示例代码
Matplotlib Legend边框去除:详细指南与示例代码
在使用Matplotlib绘制图表时,有时需要去除图例(legend)的边框,以获得更简洁的视觉效果。本文将介绍两种方法来实现这一目标,并提供示例代码说明。
方法一:使用'frameon=False'参数
最简单的方法是直接在设置图例时,使用frameon=False参数来去除边框。
import matplotlib.pyplot as plt
# 生成数据
x = [1, 2, 3, 4, 5]
y1 = [1, 2, 3, 4, 5]
y2 = [1, 4, 9, 16, 25]
# 绘制图像
plt.plot(x, y1, label='y=x')
plt.plot(x, y2, label='y=x^2')
# 设置legend
plt.legend(frameon=False) # 去除边框
# 显示图像
plt.show()
方法二:设置边框颜色为'none'
另一种方法是将图例边框的颜色设置为'none'。
import matplotlib.pyplot as plt
# 生成数据
x = [1, 2, 3, 4, 5]
y1 = [1, 2, 3, 4, 5]
y2 = [1, 4, 9, 16, 25]
# 绘制图像
plt.plot(x, y1, label='y=x')
plt.plot(x, y2, label='y=x^2')
# 设置legend
plt.legend(framealpha=0) # 设置边框透明度为0
# 显示图像
plt.show()
去除整个图像边框
如果想要去除整个图像的边框,可以使用ax.spines属性。
import matplotlib.pyplot as plt
# 生成数据
x = [1, 2, 3, 4, 5]
y1 = [1, 2, 3, 4, 5]
y2 = [1, 4, 9, 16, 25]
# 绘制图像
fig, ax = plt.subplots()
ax.plot(x, y1, label='y=x')
ax.plot(x, y2, label='y=x^2')
# 设置legend
ax.legend(frameon=False) # 去除边框
# 去除图像边框
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)
ax.spines['bottom'].set_visible(False)
ax.spines['left'].set_visible(False)
# 显示图像
plt.show()
通过以上方法,您可以轻松地去除Matplotlib图例的边框,以及整个图像的边框,从而获得更加美观和简洁的图表。
原文地址: https://www.cveoy.top/t/topic/m1yz 著作权归作者所有。请勿转载和采集!