Python使用matplotlib绘图无法显示中文问题的解决方法


Posted in Python onMarch 14, 2018

本文实例讲述了Python使用matplotlib绘图无法显示中文问题的解决方法。分享给大家供大家参考,具体如下:

在python中,默认情况下是无法显示中文的,如下代码:

import matplotlib.pyplot as plt
# 定义文本框和箭头格式
decisionNode = dict(boxstyle = "sawtooth", fc = "0.8")
leafNode = dict(boxstyle = "round4", fc = "0.8")
arrow_args = dict(arrowstyle = "<-")
# 绘制带箭头的注解
def plotNode(nodeTxt, centerPt, parentPt, nodeType) :
  createPlot.ax1.annotate(nodeTxt, xy = parentPt, xycoords = 'axes fraction', xytext = centerPt, textcoords = 'axes fraction', va = 'center', ha = 'center', bbox = nodeType, arrowprops = arrow_args)
def createPlot() :
  fig = plt.figure(1, facecolor='white')
  fig.clf()
  createPlot.ax1 = plt.subplot(111, frameon = False)
  plotNode(U'决策节点', (0.5, 0.1), (0.1, 0.5), decisionNode)
  plotNode(U'叶节点', (0.8, 0.1), (0.3, 0.8), leafNode)
  plt.show()
createPlot()

得到图像如下:

Python使用matplotlib绘图无法显示中文问题的解决方法

产生中文乱码的原因就是字体的默认设置中并没有中文字体,所以我们只要手动添加中文字体的名称就可以了

手动增加如下代码

from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']

源代码修改如下:

import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
# 定义文本框和箭头格式
decisionNode = dict(boxstyle = "sawtooth", fc = "0.8")
leafNode = dict(boxstyle = "round4", fc = "0.8")
arrow_args = dict(arrowstyle = "<-")
# 绘制带箭头的注解
def plotNode(nodeTxt, centerPt, parentPt, nodeType) :
  createPlot.ax1.annotate(nodeTxt, xy = parentPt, xycoords = 'axes fraction', xytext = centerPt, textcoords = 'axes fraction', va = 'center', ha = 'center', bbox = nodeType, arrowprops = arrow_args)
def createPlot() :
  fig = plt.figure(1, facecolor='white')
  fig.clf()
  createPlot.ax1 = plt.subplot(111, frameon = False)
  plotNode(U'决策节点', (0.5, 0.1), (0.1, 0.5), decisionNode)
  plotNode(U'叶节点', (0.8, 0.1), (0.3, 0.8), leafNode)
  plt.show()
createPlot()

最终得到图像

Python使用matplotlib绘图无法显示中文问题的解决方法

成功!

更多关于Python相关内容可查看本站专题:《Python数学运算技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
推荐11个实用Python库
Jan 23 Python
Django项目中用JS实现加载子页面并传值的方法
May 28 Python
在Mac下使用python实现简单的目录树展示方法
Nov 01 Python
python Pexpect 实现输密码 scp 拷贝的方法
Jan 03 Python
​如何愉快地迁移到 Python 3
Apr 28 Python
python递归法解决棋盘分割问题
Jul 17 Python
如何更改 pandas dataframe 中两列的位置
Dec 27 Python
关于tensorflow的几种参数初始化方法小结
Jan 04 Python
Python实现Keras搭建神经网络训练分类模型教程
Jun 12 Python
keras topN显示,自编写代码案例
Jul 03 Python
Python命名空间及作用域原理实例解析
Aug 12 Python
UI自动化定位常用实现方法代码示例
Oct 27 Python
Django中url的反向查询的方法
Mar 14 #Python
python ddt实现数据驱动
Mar 14 #Python
Python使用Django实现博客系统完整版
Sep 29 #Python
Python学生信息管理系统修改版
Mar 13 #Python
python之pandas用法大全
Mar 13 #Python
python使用sqlite3时游标使用方法
Mar 13 #Python
Python打印输出数组中全部元素
Mar 13 #Python
You might like
高分R级DC动画剧《哈莉·奎茵》第二季正式预告首发
2020/04/09 欧美动漫
修改php.ini实现Mysql导入数据库文件最大限制的修改方法
2007/12/11 PHP
PHP原理之异常机制深入分析
2010/08/08 PHP
对php 判断http还是https,以及获得当前url的方法详解
2019/01/15 PHP
Yii框架where查询用法实例分析
2019/10/22 PHP
javascript 字符 Escape,encodeURI,encodeURIComponent
2009/07/09 Javascript
Jquery结合HTML5实现文件上传
2015/06/25 Javascript
值得分享的bootstrap table实例
2016/09/22 Javascript
jQuery中$.grep() 过滤函数 数组过滤
2016/11/22 Javascript
jQuery无缝轮播图代码
2016/12/22 Javascript
H5手机端多文件上传预览插件
2017/04/21 Javascript
webpack 插件html-webpack-plugin的具体使用
2018/04/09 Javascript
在vue.js中使用JSZip实现在前端解压文件的方法
2018/09/05 Javascript
vue.js多页面开发环境搭建过程
2019/04/24 Javascript
Python函数嵌套实例
2014/09/23 Python
python使用pil生成图片验证码的方法
2015/05/08 Python
在Python中用split()方法分割字符串的使用介绍
2015/05/20 Python
Python使用xlrd模块操作Excel数据导入的方法
2015/05/26 Python
python PyTorch预训练示例
2018/02/11 Python
python 与服务器的共享文件夹交互方法
2018/12/27 Python
15行Python代码实现网易云热门歌单实例教程
2019/03/10 Python
python模拟实现斗地主发牌
2020/01/07 Python
Python基于pyecharts实现关联图绘制
2020/03/27 Python
Python3获取cookie常用三种方案
2020/10/05 Python
Python通过队列来实现进程间通信的示例
2020/10/14 Python
CSS3实现多样的边框效果
2018/05/04 HTML / CSS
加拿大知名的国际儿童品牌:Hatley
2016/11/09 全球购物
Blancsom美国/加拿大:服装和生活用品供应商
2018/07/27 全球购物
英国乐购杂货:Tesco Groceries
2018/11/29 全球购物
国贸专业个人求职信分享
2013/12/04 职场文书
群众路线问题查摆对照检查材料
2014/10/04 职场文书
教学质量月活动总结
2015/05/11 职场文书
创业计划书之熟食店
2019/10/16 职场文书
Python包管理工具pip的15 个使用小技巧
2021/05/17 Python
制作能在nginx和IIS中使用的ssl证书
2021/06/21 Servers
Oracle 多表查询基本语法实例
2022/04/18 Oracle