Matplotlib中的表情符号在OS X上显示

时间:2015-05-05 09:57:09

标签: python python-3.x matplotlib networkx emoji

我对Matplpoltlib有一项奇特的任务,我需要在标签内显示表情符号。我正在使用OS X,所以系统范围内有一个很好的表情符号支持。但是,Matplotlib无法解决问题:目前,表情符号显示为空框。我使用的是Python 3,因此Unicode应该不是问题。谢谢

1 个答案:

答案 0 :(得分:4)

它背后的想法并不是很难,但为了让它显示(至​​少在ubunto上)它给了我一些困难,因为并非所有字体都支持表情符号。我将展示直截了当的方式,但是如果遇到任何困难,我必须详细here进行一些步骤。

来自cheat sheet的表情符号emoji python package我选择了三个作为示例,这里是代码。

G = nx.Graph()
G.add_nodes_from([0,1,2])
n0 = emoji.emojize(':thumbsup:',use_aliases=True)
n1 = emoji.emojize(':sob:',use_aliases=True)
n2 = emoji.emojize(':joy:',use_aliases=True)
labels ={0:n0,1:n1,2:n2}
nx.draw_networkx(G,labels=labels, node_color = 'w', linewidths=0, with_labels=True, font_family = 'Symbola' ,font_size = 35)    
plt.show()

enter image description here