gpt4 book ai didi

unicode - 我如何在 matplotlib 中使用普通话字符?

转载 作者:行者123 更新时间:2023-12-03 13:29:01 24 4
gpt4 key购买 nike

我一直在尝试使用matplotlib的文本或用普通话注释模块。不知何故,它最终显示了盒子。对此有任何想法吗?

最佳答案

这是一个适用于我在 Python 2.7 和 Python 3.3 上的解决方案,同时使用 textannotate用中文的方法。

import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
fig = plt.figure()
ax = fig.add_subplot(111)
ChineseFont1 = FontProperties(fname = 'C:\\Windows\\Fonts\\simsun.ttc')
ChineseFont2 = FontProperties('SimHei')
ax.text(3, 2, u'我中文是写得到的', fontproperties = ChineseFont1)
ax.text(5, 1, u'我中文是写得到的', fontproperties = ChineseFont2)
ax.annotate(u'我中文是写得到的', xy=(2, 1), xytext=(3, 4),
arrowprops=dict(facecolor='black', shrink=0.05),
fontproperties = ChineseFont1)
ax.axis([0, 10, 0, 10])
plt.show()
ChineseFont1被硬编码到字体文件中,而 ChineseFont2按姓氏抓取字体(但对于 ChineseFont2,我不得不尝试一对夫妇才能找到一个可行的字体)。这两个都是我的系统所特有的,因为它们引用了我拥有的字体,因此您很可能需要将它们更改为引用系统上的字体/路径。

默认加载的字体似乎不支持汉字,所以主要是字体选择问题。

关于unicode - 我如何在 matplotlib 中使用普通话字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25561009/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com