macos下matplotlib中文乱码

第一步是拷贝字体文件到文件目录下和删除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文件夹下?

时间: 2024-07-30 12:59:08

macos下matplotlib中文乱码的相关文章

彻底解决matplotlib中文乱码问题(转)

彻底解决matplotlib中文乱码问题 1.环境查看a.系统版本查看[[email protected] ~]$ cat /etc/redhat-releaseCentOS Linux release 7.2.1511 (Core) b.系统中文字体查看 [[email protected] ~]$ fc-list :lang=zh/usr/share/fonts/wqy-microhei/wqy-microhei.ttc: 文泉驿等宽微米黑,文泉驛等寬微米黑,WenQuanYi Micro

Visual Assist X在Windows 8.1下出现中文乱码的解决方法

这主要是输入法造成的,我的输入法中有US.中文.搜狗输入法三个输入法:通过搜狗输入法管理器把"中文"去掉,或者通过语言首选项把"中文"去掉就不会在出现乱码. 这个办法的思路来自于http://www.cnblogs.com/Coling/p/3527233.html,但他说的是把除搜狗之外的都删除,我不赞同,作为开发者,经常输入英文,且经常使用Shift,只保留搜狗,那写代码时要累死.于是尝试删除"中文",结果就搞定了. Visual Assis

关于redhat enterprise linux 6.4下oracle11g中文乱码问题总结

关于redhat  enterprise linux 6.4下oracle11g中文乱码问题总结 时间:20140722 作者:李福东(易仔阿克) 一.现象 1.oracle与sqldeveloper字体乱码: 2.sqldeveloper中无法输入和显示中文. 二.问题分析 1.首先应当正确安装中文输入法 2.oralce和sqldeveloper依赖的jdk/jre不支持中文字体 三.解决方法 1.安装中文输入法ibus-pinyin(从redhat安装文件的package中找到几个ibus

windows下mysql中文乱码, 配置解决方法

内容源自:windows下mysql中文乱码, 配置解决方法 解决方法:打开mysql安装目录,打开my.ini文件(如果只有my-default.ini文件,先将其改名为my.ini!!!) 修改内里配置: [mysqld] character-set-server=utf8 [client] default-character-set=utf8 [mysql] default-character-set=utf8 如图: 修改完成后重启MySQL服务:(右键重新启动) 完成: 原文地址:ht

解决Linux下Oracle中文乱码的一些心得体会 ,转自

以下转自 http://blog.itpub.net/29151695/viewspace-1173238/ 最近在linux上安装完oracle 10gR2后,又遇到了字符集乱码的问题,之前在网上找了下,然后解决完后就不了了之了,这次又碰到此类问题,所以就认真下来花点时间去测试了一番,经过一些测试,现在已经解决了问题,现在把自己遇到的问题和解决方法记录一下,方便自己日后查找. 测试环境如下: 测试平台: VMware? Workstation 9.0.2 build-1031769 (注:VM

ubuntu下mysql中文乱码问题

本来就是想弄个网页往数据库里添加数据的,然后就发现了mysql的中文乱码问题,弄了半天解决方法如下: 首先停mysql服务,编辑配置文件my.cnf $ sudo stop mysql $sudo vim /etc/mysql/my.cnf [client] default-character-set=utf8 #增加这一行,指定字符集 port = 3306 socket = /var/run/mysqld/mysqld.sock ............. [mysqld] characte

Powershell下git中文乱码

问题 使用git log查看提交历史, 发现中文的部分出现了乱码, 如图 解决方案 powershell中输入下面的命令 git config --global core.quotepath false git config --global gui.encoding utf-8 git config --global i18n.commit.encoding utf-8 git config --global i18n.logoutputencoding utf-8 其实就是配置一下git的字

Ubuntu下vim中文乱码

在linux中,用vim打开包含中文的文件时,有可能出现乱码 下面的vim配置方法亲测有效 1. 找到你的vimrc文件,也有可能是.vimrc,有的说建议不要改全局vim配置,但是我改当前用户下的vimrc并没有生效,所以我改了全局的. 2. 配置如下 set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1 set termencoding=utf-8 set fileformats=unix set encoding=p

Mac OS 下 eclipse中文乱码解决方法(eclipse for mac 中文乱码)

http://blog.csdn.net/goodpress/article/details/7819026 由于一些java源码是从其他人那里拷贝过来,放入Mac os 版本的eclipse下,发现中文都是乱码.经过小试,可以解决. 1.打开eclipse 偏好设置:command + , 2.General ——>Content Types——>Text——>Java SourceFile 3.将编码设置为GBK(我也想设置为GB 18030,但eclipse提示我不支持该编码格式.