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 相关文章推荐
python实现搜索指定目录下文件及文件内搜索指定关键词的方法
Jun 28 Python
Python调用系统底层API播放wav文件的方法
Aug 11 Python
详解flask表单提交的两种方式
Jul 21 Python
Python使用装饰器模拟用户登陆验证功能示例
Aug 24 Python
widows下安装pycurl并利用pycurl请求https地址的方法
Oct 15 Python
用python 实现在不确定行数情况下多行输入方法
Jan 28 Python
Django自定义用户登录认证示例代码
Jun 30 Python
让Python脚本暂停执行的几种方法(小结)
Jul 11 Python
numpy数组广播的机制
Jul 12 Python
python数据预处理方式 :数据降维
Feb 24 Python
python的列表List求均值和中位数实例
Mar 03 Python
Python-jenkins 获取job构建信息方式
May 12 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
判断Keep-Alive模式的HTTP请求的结束的实现代码
2011/08/06 PHP
5种PHP创建数组的实例代码分享
2014/01/17 PHP
PHP中的Memcache详解
2014/04/05 PHP
php如何比较两个浮点数是否相等详解
2019/02/12 PHP
php实现网页上一页下一页翻页过程详解
2019/06/28 PHP
PHP实现Snowflake生成分布式唯一ID的方法示例
2020/08/30 PHP
jQuery 下拉列表 二级联动插件分享
2012/03/29 Javascript
Javascript的时间戳和php的时间戳转换注意事项
2013/04/12 Javascript
Jquery中给animation加更多的运作效果实例
2013/09/05 Javascript
用JavaScript实现使用鼠标画线的示例代码
2014/08/19 Javascript
jquery实现的蓝色二级导航条效果代码
2015/08/24 Javascript
jQuery position() 函数详解以及jQuery中position函数的应用
2015/12/14 Javascript
使用Node.js处理前端代码文件的编码问题
2016/02/16 Javascript
JavaScript的Vue.js库入门学习教程
2016/05/23 Javascript
jquery获取复选框checkbox的值的简单实现方法
2016/05/26 Javascript
浅谈jquery选择器 :first与:first-child的区别
2016/11/20 Javascript
jQuery获取this当前对象子元素对象的方法
2016/11/29 Javascript
BootStrapValidator校验方式
2016/12/19 Javascript
详解Angular Reactive Form 表单验证
2017/07/06 Javascript
详解从新建vue项目到引入组件Element的方法
2017/08/29 Javascript
pandas object格式转float64格式的方法
2018/04/10 Python
在python win系统下 打开TXT文件的实例
2018/04/29 Python
Python3实现汉语转换为汉语拼音
2019/07/08 Python
html5 offlline 缓存使用示例
2013/06/24 HTML / CSS
俄罗斯优惠券网站:BIGLION
2017/05/21 全球购物
火山咖啡:Volcanica Coffee
2019/10/29 全球购物
几道数据库的概念性面试题
2014/05/30 面试题
英文版销售经理个人求职信
2013/11/20 职场文书
毕业生自我鉴定实例
2014/01/21 职场文书
银行简历自我评价
2014/02/11 职场文书
高一新生军训感言
2014/03/02 职场文书
公司担保书格式范文
2014/05/12 职场文书
债务纠纷委托书
2014/08/30 职场文书
工作简历的自我评价
2019/05/16 职场文书
2019年员工晋升管理制度范本!
2019/07/08 职场文书
Python基础数据类型tuple元组的概念与用法
2021/08/02 Python