解决docker部署jupylab中matplotlib作图时中文显示问题

解决方法

1.下载字体
字体下载

2.找到目录

import  matplotlib
matplotlib.matplotlib_fname()

我的是这个目录:
/opt/conda/lib/python3.9/site-packages/matplotlib/mpl-data/matplotlibrc
记住这个目录

3.进入容器

docker exec --user root -it 容器ID /bin/bash

4.导入字体
/opt/conda/lib/python3.9/site-packages/matplotlib/mpl-data/matplotlibrc
步骤2中所找到的目录
/opt/conda/lib/python3.9/site-packages/matplotlib/mpl-data/fonts/ttf
将下载的字体里面的 simhei.ttf 文件 导入到这里面来

5.编辑配置文件

vim /opt/conda/lib/python3.9/site-packages/matplotlib/mpl-data/matplotlibrc

步骤2中的目录

如果出现vim : command not found
可以参考我的另外一篇博客
解决docker容器内无法vim

在配置文件中找到

font.family:  sans-serif  '''去掉注释'''
font.serif:    simhei, DejaVu Serif, Bitstream Vera Serif '''将下载导入的字体添加进去,一定要跟步骤4中导入的字体名称一样'''
axes.unicode_minus: False '''去掉注释将True 改为 False'''

6.清除字体缓存文件

'''找到字体缓存路径'''
import matplotlib
matplotlib.get_cachedir()
'''清除'''
rm rf 缓存路径

7.重启容器

'''退出容器内部'''
exit
'''重启容器'''
docker restart 容器ID

8.添加代码
在需要画图的代码中添加如下代码

plt.rcParams['font.sans-serif'] = ['simhei']
plt.rcParams['axes.unicode_minus'] = False

问题解决

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值