删除 matplotlib 中的图例键

Pea*_*ful 2 matplotlib legend

我想显示图例文本但没有键(默认情况下出现的矩形框或线)。

plt.hist(x, label = 'something')
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我不想要图例旁边的框“某物”。如何删除它?

Imp*_*est 10

首先,您可能决定根本不创建图例,而是在情节的角落放置一些标签。

import matplotlib.pyplot as plt
import numpy as np

x = np.random.normal(size=160)
plt.hist(x)

plt.text(0.95,0.95, 'something', ha="right", va="top", transform=plt.gca().transAxes)
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

如果您已经创建了图例并想要删除它,您可以通过

plt.gca().get_legend().remove()
Run Code Online (Sandbox Code Playgroud)

然后改为添加文本。

如果这不是一个选项,您可以将图例手柄设置为不可见,如下所示:

import matplotlib.pyplot as plt
import numpy as np

x = np.random.normal(size=160)
plt.hist(x, label = 'something')

plt.legend()

leg = plt.gca().get_legend()
leg.legendHandles[0].set_visible(False)

plt.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明