matplotlib生成图像中文乱码

	在使用matplotlib绘图时,会出现中文显示为方框的问题,这是因为默认使用字体为英文,无法显示中文,解决办法有两种
	第一种是每次使用时直接在代码块中添加两行代码指定使用的字体为SimHei,第二种是修改配置文件,运行代码时自动可以显示中文
	
	对比:
	第一种方式比较简单,但是每次使用时都需要添加代码
	第二种方式设置起来略微复杂,但是可以一劳永逸,建议使用第二种方法

1.需要使用中文时添加两行代码

  • #首先导入matplotlib.pyplot模块

    import matplotlib.pyplot as plt

  • #每次在显示文字的代码前加上这两行代码即可
    plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
    plt.rcParams['axes.unicode_minus']=False #用来正常显示负号

2.修改配置文件

  • 2.1 Windows系统

    • 2.1.1 查找文件所在位置

    • 在python文件中写入以下代码:
    import matplotlib
    matplotlib.matplotlib_fname()
    
    • 如图为显示的文件位置在这里插入图片描述
    • 根据显示的位置找到对应文件夹下matplotlibrc文件在这里插入图片描述
    • 2.1.2 检查是否已安装字体SimHei

      如果未安装,可以通过这个链接下载:SimHei
      提取码:hcz9
      下载完成后将字体复制到上图matplotlibrc文件所在位置的fonts/ttf文件夹下,双击安装字体

    • 2.1.3 删除本地缓存文件

    打开matplotlib字体list路径,默认为C:\Users\你的用户名.matplotlib,删除.matplotlib文件夹

    • 2.1.4 修改Matplotlibrc文件

      用编辑器打开matplotlibrc文件修改下列内容在这里插入图片描述
      在这里插入图片描述
      修改完成后ctrl+s保存文件退出

    • 2.1.5 重新打开软件运行代码,就能正常显示中文了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值