Python画图中文

当我们使用matplotlib.plt画图的时候,如果我们要输入中文的标识,使得在输出图像中显示中文,光是以下的做法是不够的。

import matplotlib.pyplot as plt

plt.figure()
plt.bar([1,2,3,4,5,6,7,8,9,10],[5,6,1,2,7,9,3,8,4,10],alpha = 0.5)
plt.xlabel('样本类别')
plt.ylabel('各类样本数量')
plt.show()

  输出可以见到,在中文部分会出现□的错误。 

要解决这个问题,需要做以下步骤:

  一、下载一个你需要的字体,例如“微软雅黑”,格式为ttf,将ttf文件放在一个文件夹下,并记录它关于你的程序保存的位置,例如我的“微软雅黑.ttf”放置在程序文件夹下的文件夹“ttf”中,则路径为“ttf/微软雅黑.ttf” 

å¨ç¨åºæ件夹ä¸å建ttfæ件夹

ttf文件夹下放入字体文件 

 二、在源代码上添加如下代码,添加的代码在后面做了标记和解释。

 

import matplotlib.pyplot as plt
import matplotlib as mpl // 新增包
from matplotlib.ticker import MultipleLocator, FormatStrFormatter //新增函数

mpl.rcParams['font.size'] = 15 // 设置字体大小
custom_font = mpl.font_manager.FontProperties(fname='tff/微软雅黑.ttf') // 导入字体文件

plt.figure()
plt.bar([1,2,3,4,5,6,7,8,9,10],[5,6,1,2,7,9,3,8,4,10],alpha = 0.5) 
plt.xlabel(u'样本类别',fontproperties=custom_font) // 在中文字前加英文字母u,并且设置字体
plt.ylabel(u'各类样本数量',fontproperties=custom_font) // 在中文字前加英文字母u,并且设置字体
plt.show()

再次运行就可以得到如下图像,可见中文正常显示。 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值