Ubuntu Linux,及Python matplot,安装Times New Roman字体,让图标签可以用Times New Roman字体

Ubuntu Linux安装Times New Roman字体

英文论文中普遍要求字体为Times New Roman字体,当你在Windows系统操作时,自带MSfont库,里面包含各种字体,但当你在Linux下工作时,需要自己安装更丰富的字体(没有MSfont版权的原因?总之要用开源自由的Linux很多工具是要自己安装的)—如有描述错误请在评论中指正。

  • Ubuntu Linux(Ubuntu 16.04)安装丰富的字体
  • Python matplot 画图时labels制定Times New Roman字体
  • 使用命令行sudo apt-get安装

问题需求:Ubuntu Linux中用Python matplotlib画图时发现不能用Times New Roman字体。

报错
这里写图片描述

解决办法:本人在查找资料时,发现是由于Ubuntu Linux不自带Times New Roman字体,需要自己安装扩展

本人在Ubuntu下安装 ttf-mscorefonts-installer
(包含Windows下的字体)安装步骤如下

sudo apt-get update #更新软件源

sudo apt-get install ttf-mscorefonts-installer #命令行安装ttf-mscorefonts-installer
当提示用户许可协议时按Tab键选OK(你只能OK啊^.^),未报错则安装成功,去目录/usr/share/fonts/truetype下看到已经安装成功。
这里写图片描述
:但现在你还不能用,需要刷新缓存才能用,
sudo fc-cache -f -v #刷新字体缓存

经过上面的步骤你在Ubuntu中的LibreOffice中就可以用Times New Roman字体了,但是我竟然在Python matplot画图时竟然还不能用,F**K。

此时冷静思考原因,既然Ubuntu本身的字体需要刷新缓存才能用,那么Python的包也都是生成缓存的,那么肯定也要刷新matplot字体的缓存啊^_^

删除Python matplot字体的缓存,即cache/matplotlib目录里的文件,不好找的话打开一个Python IED输入命令
import matplotlib as plt
plt.get_cachedir()
直接删除得到的目录,等你下次运行matplot时,它就又自动生成啦,跟Python包原理一样。

操作截图如下:

这里写图片描述
接下来再次运行我们的Python matplot画图程序发现已经可以指定Times New Roman字体了。


遗留问题:明明有Times_New_Roman_Bold.ttf这个字体,但是不能导入,各位博友可以讨论。下面截图中说明了这个问题,并且LibreOffice中也没有Times_New_Roman_Bold这个字体,不知道它的存在意义。

这里写图片描述可以看到它们的导入名是一样的。
然后发现LibreOfficeWrite中也只有Times New Roman字体
如图
这里写图片描述


到此就结束了,水平有限,欢迎指正^.^


参考文献

[1] https://blog.csdn.net/gatieme/article/details/51901396
[2] https://askubuntu.com/questions/210680/installing-times-new-roman-font
[3] http://www.himpactwxlab.com/home/how-to-wiki/change-matplotlib-fonts

猜你喜欢

转载自blog.csdn.net/u014712482/article/details/80568540