码迷,mamicode.com
首页 > 系统相关 > 详细

macos下matplotlib中文乱码

时间:2017-11-20 23:27:29      阅读:509      评论:0      收藏:0      [点我收藏+]

标签:源文件   atp   plt   otl   字体   list   synonyms   rcp   font   

第一步是拷贝字体文件到文件目录下和删除matplolib字体缓存文件

 ~\site-packages\matplotlib\mpl-data\fonts\ttf\(就是这)

import matplotlib print(matplotlib.matplotlib_fname()) # 会显示路径 ~\site-packages\matplotlib\mpl-data

 网上其它人在windows下都不拷贝字体文件到目录中,但是我在mac下必须拷贝,不知道原因。然后就是删除~/.cache/matplotlib/下的文件

第二步是修改matplotlib下的font_manager.py源文件以适应*.ttc字体文件

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),  # 此行改为‘ttf‘: (‘ttf‘, ‘otf‘, ‘ttc‘),
            otf: (ttf, otf),
            afm: (afm,)}[fontext]

 如果使用*.ttf字体可不改

第三步

myfont = matplotlib.font_manager.FontProperties(fname=/System/Library/Fonts/PingFang.ttc)
print(myfont.get_name())  # =>PingFang HK

matplotlib.rcParams[font.sans-serif] = PingFang HK
matplotlib.rcParams[axes.unicode_minus] = False  # -符号

plt.title("哈哈")
plt.show()

 PingFang.ttc文件要拷贝进matplotlib下的ttf文件夹中,字体名字和字体文件名字未必相同,最好先查一下

 

最后谁知道是否可以不复制字体文件到mp-data文件夹下?

macos下matplotlib中文乱码

标签:源文件   atp   plt   otl   字体   list   synonyms   rcp   font   

原文地址:http://www.cnblogs.com/avincross/p/7868437.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!