详解Python Matplot中文显示完美解决方案

 更新时间:2019年03月07日 17:04:01   作者:飘飘白云  
这篇文章主要介绍了Python Matplot中文显示完美解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

原因与现象

Matplot是一个功能强大的Python图表绘制库,很遗憾目前版本自带的字体库中并不支持中文字体。所以如果在绘制内容中需要显示中文,那么就会显示为方格字符。

解决办法

有一个较为完美的解决方案,通过扫描Matplot自带字体库以及系统字体库,寻找能够支持的中文字体,如果能够找到的话,就设置第一个为Matplot的字体熟悉。

import matplotlib.pyplot as plt
from matplotlib.font_manager import FontManager
from pylab import mpl
import subprocess

def get_matplot_zh_font():
 fm = FontManager()
 mat_fonts = set(f.name for f in fm.ttflist)

 output = subprocess.check_output('fc-list :lang=zh -f "%{family}\n"', shell=True)
 zh_fonts = set(f.split(',', 1)[0] for f in output.split('\n'))
 available = list(mat_fonts & zh_fonts)

 print '*' * 10, '可用的字体', '*' * 10
 for f in available:
 print f
 return available

def set_matplot_zh_font():
 available = get_matplot_zh_font()
 if len(available) > 0:
 mpl.rcParams['font.sans-serif'] = [available[0]] # 指定默认字体
 mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题

在绘图之前,调用set_matplot_zh_font()设置一下就可以了。

效果

如下图所示:

以上所述是小编给大家介绍的Python Matplot中文显示完美解决方案详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • python 设置xlabel,ylabel 坐标轴字体大小,字体类型

    python 设置xlabel,ylabel 坐标轴字体大小,字体类型

    这篇文章主要介绍了python 设置xlabel,ylabel 坐标轴字体大小,字体类型,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • python利用装饰器进行运算的实例分析

    python利用装饰器进行运算的实例分析

    本文主要是通过使用Python的装饰器来做一个运算的实例,来给大家详细介绍下Python的装饰器,非常的实用,有需要的小伙伴可以参考下。
    2015-08-08
  • 详解多线程Django程序耗尽数据库连接的问题

    详解多线程Django程序耗尽数据库连接的问题

    这篇文章主要介绍了多线程Django程序耗尽数据库连接的问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • 详解Django admin高级用法

    详解Django admin高级用法

    这篇文章主要介绍了Django admin高级用法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-11-11
  • python BlockingScheduler定时任务及其他方式的实现

    python BlockingScheduler定时任务及其他方式的实现

    这篇文章主要介绍了python BlockingScheduler定时任务及其他方式的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • python 处理string到hex脚本的方法

    python 处理string到hex脚本的方法

    今天小编就为大家分享一篇python 处理string到hex脚本的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • python实现ping的方法

    python实现ping的方法

    这篇文章主要介绍了python实现ping的方法,以实例形式较为详细的分析了Python发送ICMP数据包实现ping功能的相关技巧,需要的朋友可以参考下
    2015-07-07
  • Python深度学习pytorch神经网络Dropout应用详解解

    Python深度学习pytorch神经网络Dropout应用详解解

    这篇文章主要为大家介绍了Python深度学习中关于pytorch神经网络Dropout的应用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2021-10-10
  • 深入解析python返回函数和匿名函数

    深入解析python返回函数和匿名函数

    这篇文章主要介绍了python返回函数和匿名函数的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • 详解PyTorch批训练及优化器比较

    详解PyTorch批训练及优化器比较

    本篇文章主要介绍了详解PyTorch批训练及优化器比较,详细的介绍了什么是PyTorch批训练和PyTorch的Optimizer优化器,非常具有实用价值,需要的朋友可以参考下
    2018-04-04

最新评论