You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

安装adjustText后图表字体变粗,更新matplotlib遇WinError32求助

解决Matplotlib字体全变粗及更新失败问题

一、先搞定Matplotlib更新的文件占用错误

出现WinError 32是因为DejaVuSans-Bold.ttf被进程占用,大概率是Jupyter或Python后台进程没关死,按下面步骤来:

  • 关掉所有Jupyter窗口、终端,打开任务管理器结束所有Python、Jupyter相关进程
  • 先试conda更新:
    conda update matplotlib
    
    要是还报错,用--user绕开权限/占用问题:
    pip install --upgrade matplotlib --user
    

二、重置字体配置解决全粗体问题

更新后字体还是粗,说明Matplotlib的默认字体配置被改了,直接重置:

  1. 清Matplotlib缓存:
    找到Windows下的缓存目录C:\Users\user1\.matplotlib,删掉里面所有文件(尤其是fontlist-v330.json这类字体缓存)
  2. 临时指定正常字体(绘图前加这段代码):
    import matplotlib.pyplot as plt
    plt.rcParams.update({
        'font.family': 'DejaVu Sans',
        'font.weight': 'normal',
        'axes.labelweight': 'normal',
        'axes.titleweight': 'normal',
        'xtick.labelweight': 'normal',
        'ytick.labelweight': 'normal'
    })
    
  3. 检查全局配置文件:
    找到c:\users\user1\anaconda3\lib\site-packages\matplotlib\mpl-data\matplotlibrc,打开后找这些参数,确保都是normal:
    font.family:  DejaVu Sans
    font.weight:  normal
    axes.labelweight: normal
    axes.titleweight: normal
    xtick.labelweight: normal
    ytick.labelweight: normal
    
    之前要是被改成bold,改回normal就行。

三、验证修复效果

跑一段简单代码测试:

import matplotlib.pyplot as plt

plt.plot([1,2,3], [4,5,6])
plt.title('测试标题')
plt.xlabel('X轴标签')
plt.ylabel('Y轴标签')
plt.show()

字体正常就说明搞定了。

内容的提问来源于stack exchange,提问作者paul

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 15:42:04