我想在matplotlib中绘制Apple表情符号,所以我写了这段代码。 但是,我在设置字体时遇到无法设置字体大小的错误。 如果我没有设置字体,它将被绘制成下一个图像。 image of plotting emoji
我的系统是Mac OS X Sierra 10.12.6,我的matplotlib版本是2.0.2。
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
prop = FontProperties(fname='/System/Library/Fonts/Apple Color Emoji.ttc')
plt.rcParams['font.family'] = prop.get_name()
plt.annotate("", (0.5, 0.3), size=30)
plt.annotate("", (0.5, 0.8), size=30)
plt.savefig("emoji_test.png")
文件" ./ emoji_test.py",第5行,
plt.rcParams [' font.family'] = prop.get_name()
File" /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/font_manager.py" ;,第750行,在get_name中
return get_font(findfont(self))。family_name
RuntimeError:在FT2Font中:无法设置fontsize
答案 0 :(得分:0)
使用prop.get_family()
而不是prop.get_name()
,因为您设置字体系列而不是字体名称
代码变为。
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
prop = FontProperties(fname='/System/Library/Fonts/Apple Color Emoji.ttc')
plt.rcParams['font.family'] = prop.get_family()
plt.annotate("", (0.5, 0.3), size=30)
plt.annotate("", (0.5, 0.8), size=30)
plt.savefig("emoji_test.png")
PS。错误消息是由已知问题引起的。见RuntimeError In FT2Font with NISC18030.ttf