Linux下的python修改画图的字体
写在前面:最近在Linux上使用python,需要画图,但是默认的字体不是‘Times New Roman’,自己的代码设置的字体为‘Times New Roman’,因此出图的时候会报出:findfont: Font family ['Times New Roman'] not found. Falling back to DejaVu Sans。为了一劳永逸,决定将字体改为‘Times New
写在前面:最近在Linux上使用python,需要画图,但是默认的字体不是‘Times New Roman’,自己的代码设置的字体为‘Times New Roman’,因此出图的时候会报出:findfont: Font family ['Times New Roman'] not found. Falling back to DejaVu Sans。为了一劳永逸,决定将字体改为‘Times New Roman’。
一、字体准备:Linux上的python没有‘Times New Roman’的库,需要先安装一个‘Times New Roman’的‘***.ttf’的文件。这个文件有两个来源:
(1)window系统下的‘C:\Windows\Fonts’,这个文件夹里存放的是字体,可以找到‘Times New Roman’这个字体,里面有四个字体格式:常规,加粗,倾斜,粗斜。需要将自己需要的字体格式复制到其他地方。
(2)通过网站下载http://www.xiazaiziti.com/?s=times+new+roman。
二、字体安装:需要将字体安装到指定的路径:这里贴出我个人的安装路径:“/home/xliu/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/ttf/”,自己也可以输入以下代码:
python
>>> import matplotlib
>>> print(matplotlib.matplotlib_fname())
显示字体安装路径。将字体安装到该路径下面,记住自己安装字体的文件名称。
三、文件修改:以我个人路径为例,找到“/home/xliu/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data”路径下的matplotlibrc文件,需要修改三个地方,我安装的是window的"times.ttf"
(1)#font.family : times
(2)#font.sans-serif : SimHei, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif, Turkish-Times-New-Roman-Bold, times ,timesi
(3)#axes.unicode_minus : False ## use unicode for the minus symbol (此处的True改为False)
四、删除字体缓存:输入以下:
python
>>> import matplotlib
>>> matplotlib.get_cachedir(),找到隐藏的文件夹,删除 ~/.cache/matplotlib的缓冲目录。
此时,字体修改完毕,运行程序,图中的字体就是自己希望的‘Times New Roman’
参考资料:
https://blog.csdn.net/mr_muli/article/details/89485619
https://blog.csdn.net/sinat_40875078/article/details/104326855
https://blog.csdn.net/qq_37703898/article/details/105050800
更多推荐
所有评论(0)