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的几种开发工具介绍
Mar 07 Python
Python实现的ini文件操作类分享
Nov 20 Python
Python查找相似单词的方法
Mar 05 Python
Python中MySQLdb和torndb模块对MySQL的断连问题处理
Nov 09 Python
python实现域名系统(DNS)正向查询的方法
Apr 19 Python
Python计时相关操作详解【time,datetime】
May 26 Python
浅谈Python中的可变对象和不可变对象
Jul 07 Python
python3利用ctypes传入一个字符串类型的列表方法
Feb 12 Python
python基于pdfminer库提取pdf文字代码实例
Aug 15 Python
FFrpc python客户端lib使用解析
Aug 24 Python
python绘制雪景图
Dec 16 Python
详解django中Template语言
Feb 22 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
基于mysql的bbs设计(二)
2006/10/09 PHP
php microtime获取浮点的时间戳
2010/02/21 PHP
PHP开发框架Laravel数据库操作方法总结
2014/09/03 PHP
php实现的简单检验登陆类
2015/06/18 PHP
PHP使用mysqli操作MySQL数据库的简单方法
2017/02/04 PHP
php判断目录存在的简单方法
2019/09/26 PHP
jQuery Autocomplete自动完成插件
2010/07/17 Javascript
根据身份证号自动输出相关信息(籍贯,出身日期,性别)
2013/11/15 Javascript
关于JavaScript对象的动态选择及遍历对象
2014/03/10 Javascript
JavaScript截取字符串的2个函数介绍
2014/08/27 Javascript
浅谈javascript 函数表达式和函数声明的区别
2016/01/05 Javascript
使用JavaScript脚本判断页面是否在微信中被打开
2016/03/06 Javascript
jQuery实现边框动态效果的实例代码
2016/09/23 Javascript
ES6学习笔记之正则表达式和字符串正则方法分析
2017/04/25 Javascript
angular2路由切换改变页面title的示例代码
2017/08/23 Javascript
基于vue+canvas的excel-like组件实例详解
2017/11/28 Javascript
vue项目中添加单元测试的方法
2018/07/21 Javascript
vee-validate vue 2.0自定义表单验证的实例
2018/08/28 Javascript
python在linux中输出带颜色的文字的方法
2014/06/19 Python
Python按行读取文件的实现方法【小文件和大文件读取】
2016/09/19 Python
python操作xlsx文件的包openpyxl实例
2018/05/03 Python
在unittest中使用 logging 模块记录测试数据的方法
2018/11/30 Python
详解python项目实战:模拟登陆CSDN
2019/04/04 Python
在linux下实现 python 监控usb设备信号
2019/07/03 Python
python 中值滤波,椒盐去噪,图片增强实例
2019/12/18 Python
python解析xml文件方式(解析、更新、写入)
2020/03/05 Python
贝佳斯官方网站:Borghese
2020/05/08 全球购物
信息总监管理职责范本
2014/03/08 职场文书
初中学校军训方案
2014/05/09 职场文书
机关领导干部作风整顿整改措施
2014/09/19 职场文书
赔偿协议书怎么写
2015/01/28 职场文书
防暑降温通知书
2015/04/27 职场文书
小学总务工作总结
2015/08/13 职场文书
机械原理课程设计心得体会
2016/01/15 职场文书
创作书写之导游词实用技巧分享(干货)
2019/12/20 职场文书
MySQL 使用SQL语句修改表名的实现
2021/04/07 MySQL