解决winddows环境下matplotlab绘制图像字体乱码(方框现象)

 代码如下:

# 画出某城市11点到12点一小时内每分钟的温度变化折线图
import random
x=range(60)
y_shanghai=[random.uniform(15,18) for i in x]
plt.figure(figsize=(20,8),dpi=80)
plt.plot(x,y_shanghai)
# x,y的刻度说明
    # 构造x,y的刻度
x_ticks_label=["11点{}分".format(i) for i in x]
y_ticks=range(40)
    # 修改刻度显示
plt.xticks(x[::5],x_ticks_label[::5])
plt.yticks(y_ticks[::5])
plt.show()

绘制图像如下:

 可以看到在下方中文字体出现乱码无法正常输出

解决办法 (一次性解决)

1.此时解决办法是下载SimHei.ttf字体安装包(该安装包百度自行搜索即可),双击进行安装(在这里建议将安装包放置在D:\ANACONDA\Lib\site-packages\matplotlib\mpl-data\fonts\ttf下,具体位置请读者自行更改

 

 2.将matplatlib目录下的缓存文件删除,重新运行文件。

 #### 若前面无法解决问题,可进一步找到“matplotlibrc”配置文件

1.可通过以下代码寻找路径:

import matplotlib
matplotlib.matplotlib_fname()

2.进入该文件后

找到" font.family" 改为SimHei

具体代码如下:

font.family :SimHei

找到" font.serif" 添加SimHei

具体代码如下:

#font.serif:      SimHei,DejaVu Serif, Bitstream Vera Serif, Computer Modern Roman, New Century 

找到" font.san-serif"添加SimHei

具体代码如下:

font.sans-serif: SimHei,DejaVu Sans, Bitstream Vera Sans, Computer Modern Sans Serif, Lucida Grande

3.最后再将matplotlib缓存文件删除重新运行即可解决问题。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值