我正在使用FontAwesome作为图表中的符号,每个数据点都是FontAwesome字体中的一个符号,看起来像一个图标。因此,在图例中,我希望使用文本(FontAwesome符号)来描述项目。
我使用的代码类似于:
我使用的代码类似于:
from matplotlib.patches import Patch
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm
ax = plt.gca()
ax.axis([0, 3, 0, 3])
prop = fm.FontProperties(fname='FontAwesome.otf', size=18)
ax.text(x=0, y=0, s='\uf1c7', color='r', fontproperties=prop)
ax.text(x=2, y=0, s='\uf050', color='g', fontproperties=prop)
plt.legend(handles=[Patch(color='r', label='label1'), Patch(color='g', label='label2')])
我想做的是将图例中的颜色条替换为与图中相同的图标。
我使用的句柄是一组补丁列表。但我发现很难在Patch中添加文本。我在这里找到了一个很好的解决方案,可以在图例中添加图片:Insert image in matplotlib legend
我尝试使用TextArea替换该答案中的BboxImage,但它不起作用,并且TextArea不支持类似于axis.text的fontproperties。
那么,有没有办法在图例中使用文本代替标记?