Python Matplotlib可以';我找不到草书字体

Python Matplotlib可以';我找不到草书字体,python,python-3.x,matplotlib,jupyter-notebook,Python,Python 3.x,Matplotlib,Jupyter Notebook,我想让matplotlib中的文本标签都是Arial字体。从中,我尝试了以下方法: plt.rcParams['mathtext.it'] = 'Arial:italic' plt.rcParams['mathtext.rm'] = 'Arial' plt.rcParams['mathtext.default'] = 'regular' plt.rcParams['font.serif'] = 'Arial' plt.rcParams['font.family'] = 'Arial' labe

我想让matplotlib中的文本标签都是Arial字体。从中,我尝试了以下方法:

plt.rcParams['mathtext.it'] = 'Arial:italic'
plt.rcParams['mathtext.rm'] = 'Arial'
plt.rcParams['mathtext.default'] = 'regular'
plt.rcParams['font.serif'] = 'Arial'
plt.rcParams['font.family'] = 'Arial'
label_name = r'$\mathit{%s}$ %s' % (gene, splice)
ax1c.set_ylabel(label_name, fontsize=8, labelpad=17)
这几乎解决了每一种情况下的问题。当我尝试放置包含斜体和常规字体的打印标签时,问题出现了。在这里,当我尝试以下操作时:

plt.rcParams['mathtext.it'] = 'Arial:italic'
plt.rcParams['mathtext.rm'] = 'Arial'
plt.rcParams['mathtext.default'] = 'regular'
plt.rcParams['font.serif'] = 'Arial'
plt.rcParams['font.family'] = 'Arial'
label_name = r'$\mathit{%s}$ %s' % (gene, splice)
ax1c.set_ylabel(label_name, fontsize=8, labelpad=17)
该字体最终不是Arial字体。当我尝试
r'$\it{%s}$%s%%(基因,剪接)
时也会得到同样的结果。我已经尝试了以下两行代码:

plt.rcParams['mathtext.fontset'] = 'custom'
mpl.rcParams['mathtext.fontset'] = 'custom'
但是,两者都不起作用,并且都返回以下错误:

/home/soma/anaconda3/lib/python3.6/site-packages/matplotlib/font_manager.py:1320: UserWarning: findfont: Font family ['cursive'] not found. Falling back to DejaVu Sans
(prop.get_family(), self.defaultFamily[fontext]))
我找到的解决此问题的最佳链接是。我尝试了以下方法:

plt.rcParams['mathtext.it'] = 'Arial:italic'
plt.rcParams['mathtext.rm'] = 'Arial'
plt.rcParams['mathtext.default'] = 'regular'
plt.rcParams['font.serif'] = 'Arial'
plt.rcParams['font.family'] = 'Arial'
label_name = r'$\mathit{%s}$ %s' % (gene, splice)
ax1c.set_ylabel(label_name, fontsize=8, labelpad=17)
  • 退出Jupyter
  • sudoapt安装字体管理器
  • sudo apt安装msttcorefonts-qq
  • rm~/.cache/matplotlib-rf
  • 重新启动Jupyter
然而,我继续得到相同的错误


我希望您能为我的
rcParams['mathtext.fontset']='custom'
解决方案提供一个替代方案,或者为字体未找到问题提供一个解决方案

我无法重现您的字体问题,但我不使用Jupyter。最好包含Python、matplotlib和Jupyter的版本号。一张图片显示了系统选择哪种字体来代替Arial.Jupiter 3.5.11、python3.6.4::Anaconda,Inc.和matplotlib 2.1.2。我不能发布一张图片,因为它是为我的论文而绘制的,因为这个问题在一夜之间就解决了,所以我不能制作一张新的。就像昨晚我下班时一样,它已经存在了,而今天早上,完全相同的代码,来自完全相同的笔记本(我下班后没有关闭电脑、jupypter或笔记本)现在使用Arial。UserWarning仍然存在,但代码很好(除此之外,只使用字母,而不是斜体数字)。我真的不知道该怎么想。。。