解决google colab环境下使用matplotlib绘图中文乱码问题

最近通过google colab学习python数据分析的过程中遇到了一个matplotlib绘图中文乱码的问题,通过网上搜索,获得了以下较简单的解决办法,记录下。

问题现象

问题原因

  1. colab的虚拟机ubuntu操作系统没有支持中文的字体,通过!fc-list :lang=zh命令执行,发现结果为空;
  2. matplotlib配置文件没有支持中文的字体。

解决措施

  • 从网上下载一个支持中文的字体到系统字体目录:
    !wget -O /usr/share/fonts/truetype/liberation/simhei.ttf "http://file3.data.weipan.cn/87016829/e6a4de46faf0c7ba622132eaaad96a291d62f045?ip=1546784382,2409:8a20:203b:550:dbc:11e3:2ef9:cee9&ssig=OSXPXG8otr&Expires=1546784982&KID=sae,l30zoo1wmz&fn=simhei.ttf&se_ip_debug=2409:8a20:203b:550:dbc:11e3:2ef9:cee9&from=1221134"
  • 引入下载的中文字体
    import matplotlib.pyplot as plt
    import matplotlib as mpl
    zhfont = mpl.font_manager.FontProperties(fname='/usr/share/fonts/truetype/liberation/simhei.ttf')
    plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
  • 画坐标及坐标轴文本的时候引用
    plt.title(u'电影评分最高top10', color=color_text, fontproperties=zhfont)
    plt.xlabel(u'电影名称', fontproperties=zhfont)
    plt.ylabel(u'评分', fontproperties=zhfont)
    plt.xticks(rotation=270, fontproperties=zhfont)

实施效果

image.png

你可能感兴趣的:(解决google colab环境下使用matplotlib绘图中文乱码问题)