Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matplotlib找不到基本字体_Matplotlib - Fatal编程技术网

Matplotlib找不到基本字体

Matplotlib找不到基本字体,matplotlib,Matplotlib,我试图在pyplot图形中使用Computer Modern(即标准LaTeX字体),但是,我得到了错误 findfont: Font family ['serif'] not found. Falling back to DejaVu Sans. 我所做的就是: from matplotlib import rc rc('text', usetex=True) rc('font', **{'family': 'serif', 'serif': ['Computer Modern']})

我试图在pyplot图形中使用Computer Modern(即标准LaTeX字体),但是,我得到了错误

findfont: Font family ['serif'] not found. Falling back to DejaVu Sans.
我所做的就是:

from matplotlib import rc

rc('text', usetex=True)
rc('font', **{'family': 'serif', 'serif': ['Computer Modern']})
我也发现了这个解决了同样的问题,但是,我不能安装答案中提到的软件包,因为我不是我正在使用的机器上的管理员。删除matplotlib缓存也没有帮助。不过,我已经找到了字体:

~/.local/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/
其中有afm和ttf子文件夹(还有另一个),在这两个子文件夹中,我发现了如下文件

cmr10.afm 

所以字体实际上是安装在计算机上的。fontlist-v330.json文件链接到

"fname": "fonts/afm/cmr10.afm"

对于现代计算机。我已经尝试手动将其更改为ttf文件,并且尝试为其提供完整路径,但没有效果。在这一点上,我对想法一无所知。如何解决此问题?

您只需使用字体文件的实际名称即可:

from matplotlib import rc

rc('text', usetex=True)
rc('font', **{'family': 'serif', 'serif': ['cmr10']})

这很有效,谢谢!
from matplotlib import rc

rc('text', usetex=True)
rc('font', **{'family': 'serif', 'serif': ['cmr10']})