Matplotlib 图不显示图例

Posted

技术标签:

【中文标题】Matplotlib 图不显示图例【英文标题】:Matplotlib plot does not show legend 【发布时间】:2020-12-09 06:40:02 【问题描述】:

我想快速绘制一个函数,改变它的一个参数,并用一个图例显示这个参数的值:

def supergaussian1d(x, x0, Imax, FWHM, n):
    return Imax * np.exp(-4 * np.log(2) * (np.sqrt((x + x0)**2) / FWHM) ** (2*n))

x = np.linspace(0, 15, num=100)
for m in range(2, 9):
    plt.plot(x, supergaussian1d(x, x0=-7, Imax=10, FWHM=5, n=m), label=''.format(m))
    plt.ylim((0, 12))
plt.show()

这是输出:

为什么不显示图例?

另外,plt.show() 是否缩进有区别吗?

【问题讨论】:

【参考方案1】:

您是否尝试在plt.show() 之前添加plt.legend()

【讨论】:

刚刚试过了,它确实有效。愚蠢的我...谢谢! 没问题!您还可以使用参数 loc 在plt.legend() 中指定图例的位置。

以上是关于Matplotlib 图不显示图例的主要内容,如果未能解决你的问题,请参考以下文章

Matplotlib 条形图不接受数组作为高度参数

Matplotlib 图不更新数据更改

为啥 matplotlib 中的图例不能正确显示颜色?

matplotlib 图例显示问题

Matplotlib 轴图例在 barh 中仅显示一个标签

如何在 Python matplotlib 子图中显示图例