调整plt中legend的边框大小等设置
洛理业
2024年09月28日 15:30

在  中,可以使用  函数的多个参数来调整图例(legend)的边框、位置、字体大小等属性。要调整图例的边框大小、颜色、线型等,可以使用  等参数,也可以通过  参数调整图例的位置。

以下是一些常见的图例设置选项:

  1. 边框线宽: 使用 frameon=True 和 borderpad 参数调整边框的宽度。

  2. 边框颜色: 使用 edgecolor 参数。

  3. 边框透明度: 使用 framealpha 参数。

  4. 边框样式: 使用 fancybox 参数设置圆角或直角边框。

示例代码

代码块
Python
自动换行
复制代码
import matplotlib.pyplot as plt

# 示例数据
x = [0, 1, 2, 3, 4, 5]
y1 = [0, 1, 4, 9, 16, 25]
y2 = [0, 1, 8, 27, 64, 125]

# 绘制两条曲线
plt.plot(x, y1, label="曲线 1")
plt.plot(x, y2, label="曲线 2")

# 调整图例的边框和样式
plt.legend(
    fontsize=12,               # 图例字体大小
    loc='upper left',          # 图例位置
    frameon=True,              # 显示边框
    edgecolor='black',         # 边框颜色
    framealpha=0.8,            # 边框透明度
    borderpad=1.5,             # 边框内边距
    labelspacing=1.2,          # 标签之间的垂直间距
    fancybox=True,             # 使用圆角边框
    shadow=True,               # 添加阴影
    borderaxespad=0.5,         # 图例与坐标轴的距离
)

# 设置标题和标签
plt.title("调整图例边框的示例")
plt.xlabel("X 轴")
plt.ylabel("Y 轴")

# 显示图表
plt.show()
复制成功


参数说明:

  • fontsize: 调整图例中文字的大小。

  • loc: 控制图例的显示位置,如 'upper right', 'lower left' 等。

  • frameon: 控制是否显示图例边框,True 显示,False 隐藏。

  • edgecolor: 设置图例边框的颜色。

  • framealpha: 设置图例边框的透明度,值从 0(完全透明)到 1(不透明)。

  • borderpad: 控制图例边框和内容之间的内边距。

  • labelspacing: 设置图例中标签之间的间距。

  • fancybox: 如果为 True,则图例边框为圆角;否则为直角。

  • shadow: 为图例添加阴影。

  • borderaxespad: 控制图例与坐标轴之间的距离。

通过这些参数,你可以精确地调整图例的边框大小、样式和位置。