解决python画图标签中文乱码

Posted yc..

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决python画图标签中文乱码相关的知识,希望对你有一定的参考价值。

在用python的时候经常会遇到乱码问题

1. 注释乱码问题

在代码的最上面添加:

# -*- coding: utf-8 -*-

2. 无法识别中文字体

通过运行以下代码查看系统中可以用的中文字体:

#! /usr/bin/env python
# -*- coding: utf-8 -*-
from matplotlib.font_manager import FontManager
import subprocess

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)
# print '*' * 10, '系统可用的中文字体', '*' * 10
# print output
zh_fonts = set(f.split(',', 1)[0] for f in output.split('\\n'))
available = mat_fonts & zh_fonts

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

加入以下语句:

from pylab import *
mpl.rcParams['font.sans-serif'] = ['Droid Sans Fallback']

注:Droid Sans Fallback 为查询得到的系统中的中文字体

3. 画图时候“-”号显示为方块问题

加入以下语句:

mpl.rcParams['axes.unicode_minus'] = False
#解决保存图像是负号'-'显示为方块的问题

python 画图可以参考以下博客

http://www.cnblogs.com/wei-li/archive/2012/05/23/2506940.html#oo
http://old.sebug.net/paper/books/scipydoc/index.html#id2

以上是关于解决python画图标签中文乱码的主要内容,如果未能解决你的问题,请参考以下文章

win10 永久解决matplotlib 画图中文及负号显示为方框 python

Python中,如何使得图像的中文和负号正常显示

python画图无法显示中文 python画图显示中文乱码

python jupyter notebook画图图例中文乱码?

python matplotlib.plot画图显示中文乱码的问题

python中matplotlib中标签中文乱码的一种解决方法