python安装教程win7python汉字字体宋体_设置matplotlib中⽂显⽰(宋体)
记录设置 matplotlib中⽂显⽰,免得下次就忘了
环境:win7 64, Anaconda,Python3.5.2,matplotlib1.5.3最近折腾了⼀会⼉iPython,想学学⽤matplotlib作图,遂安装了Anaconda。不料matplotlib对中⽂⽀持不好,默认情况下没有中⽂字体,打出来⼀堆□□。咋解决呢?baidu,Google⼀起上呗,结果并不能让⼈满意,不过还是学到基本设置都在MATPLOTLIBRC⽂件中。dos命令提示符
MATPLOTLIBRC位置:INSTALL\Lib\site-packages\matplotlib\mpl-data\其中### FONT部分包括以下设置,其中serif, sans-serif, cursive, fantasy, monospace是matplotlib的五种font.family
#font.serif : simsun, ...
matlab中subplot是什么意思#font.sans-serif :simhei, ...
#font.cursive : ...
#font.fantasy : ...
#space : ...
将simsun(宋体),simhei(⿊体)添加到对应的serif和sans-serif⾥⾯,保存。
python编程基础教程答案此时可以正确显⽰中⽂⿊体,但是宋体仍然不⾏。
再打开INSTALL\Lib\site-packages\matplotlib\font_manager.py 进⾏编辑
在⼤约155-162⾏,如下,
def get_fontext_synonyms(fontext):
"""
Return a list of file extensions extensions that are synonyms for
the given file extension *fileext*.
"""
return {'ttf': ('ttf', 'otf'),
'otf': ('ttf', 'otf'),
'afm': ('afm',)}[fontext]
这部分⽤来识别字体的扩展名,由于simsun等某些中⽂字体扩展名是ttc,所以没办法被matplotlib识别加载,将部分略作修改后保存即可。
return {'ttf': ('ttf', 'otf'), ...修改为
return {'ttf': ('ttf', 'otf', 'ttc'), ...另外可能有必要清理掉系统盘中Users\YOURNAME\.matplotlib\下的缓存⽂件fontList.py3k.cache
然后打开
winsock网络编程ipython --pylab
import matplotlib.pyplot as plt
rc('font',**{'family':'sans-serif','sans-serif':['simsun']})
plt.title(u'中⽂')
<(.2,.8,u'这也是中⽂',fontsize=40)
表单元素标签可正常显⽰中⽂
其他windows所⽤字体在系统的Windows\Fonts\注意:只测试了⿊体和宋体,并未测试其他字体。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论