gpt4 book ai didi

python - Matplotlib 报告字体系列 'serif' 未找到

转载 作者:太空狗 更新时间:2023-10-30 00:18:30 28 4
gpt4 key购买 nike

例如,当我尝试运行时:

mpl.rcParams['font.family'] = 'serif'
plt.rcParams['figure.figsize'] = [15,7]
plt.plot(data['flow-time'], data['staticpressurerecovery'])
plt.xlabel('Time [s]')
plt.ylabel('Static Pressure Recovery [-]')
plt.title('McD13_4S3 Plenum: Performance Coefficient ')
plt.ylim((0.33, 0.4))
plt.grid()
plt.show()

在 Jupyter notebook 中,我收到以下错误消息:

C:\ProgramData\Anaconda3\lib\site-packages\matplotlib\font_manager.py:1331: UserWarning: findfont: Font family ['serif'] not found. Falling back to DejaVu Sans
(prop.get_family(), self.defaultFamily[fontext]))

我尝试过的事情:

  1. 删除 fontList.cachefontList.jsonfontList.py3.cache

  2. 取消注释 matplotlibrc 文件的字体系列相关部分

  3. 使用 pip uninstall matplotlibpip install matplotlib

    卸载并重新安装了 matplotlib

什么都没有解决这个问题。我现在获得不同字体的唯一可能方法是使用 LaTeX 作为后端,但这很慢而且没有必要。

有什么想法我接下来可以尝试吗?

编辑:我使用的是 Windows 10,所以我没有使用 apt-get。这似乎是解决这些问题的常见方法,但我做不到。看起来这些解决方案只是将 Microsoft 字体添加到 Linux 字体管理器,所以它可能甚至不相关,因为我已经在 Microsoft 机器上了。

最低工作示例:

import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np

mpl.rcParams['font.family'] = 'serif'
mpl.rcParams['font.serif'] = 'Computer Modern'


t = np.arange(0.0, 2.0, 0.01)
s = 1 + np.sin(2*np.pi*t)
plt.plot(t, s)
plt.show()

fontList.json 中,Computer Modern 被列为可用字体。

最佳答案

我遇到了同样的问题。对我来说,将我的 matplotlib 版本从 1.5.3 改回即可解决问题。您需要先pip uninstall matplotlib,然后pip install matplotlib==1.5.3

更多上下文,我在带有 Amazon EC2 的 zeppelin notebook 上使用 ggplot。不知何故,安装的 matplotlib 版本是 2.2.3

改版本后错误消失

关于python - Matplotlib 报告字体系列 'serif' 未找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52320969/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com