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实现的生成自我描述脚本分享(很有意思的程序)
Jul 18 Python
Python自定义进程池实例分析【生产者、消费者模型问题】
Sep 19 Python
Python快速从注释生成文档的方法
Dec 26 Python
简单谈谈Python中的json与pickle
Jul 19 Python
python创建列表和向列表添加元素的实现方法
Dec 25 Python
Python selenium实现微博自动登录的示例代码
May 16 Python
python利用微信公众号实现报警功能
Jun 10 Python
django 发送邮件和缓存的实现代码
Jul 18 Python
对pandas数据判断是否为NaN值的方法详解
Nov 06 Python
python爬虫 爬取58同城上所有城市的租房信息详解
Jul 30 Python
Django框架序列化与反序列化操作详解
Nov 01 Python
Python基于Tkinter开发一个爬取B站直播弹幕的工具
May 06 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
php站内搜索并高亮显示关键字的实现代码
2011/12/29 PHP
php二维数组排序方法(array_multisort usort)
2013/12/25 PHP
php中有关合并某一字段键值相同的数组合并的改进
2015/03/10 PHP
PHP7之Mongodb API使用详解
2015/12/26 PHP
php注册系统和使用Xajax即时验证用户名是否被占用
2017/08/31 PHP
php json转换相关知识(小结)
2018/12/21 PHP
php swoole多进程/多线程用法示例【基于php7nts版】
2019/08/12 PHP
通过JAVASCRIPT读取ASP设定的COOKIE
2007/02/15 Javascript
Js实现双击鼠标自动滚动屏幕的示例代码
2013/12/14 Javascript
JavaScript中的方法调用详细介绍
2014/12/30 Javascript
Nodejs爬虫进阶教程之异步并发控制
2016/02/15 NodeJs
js选择器全面解析
2016/06/27 Javascript
jQuery实现倒计时重新发送短信验证码功能示例
2017/01/12 Javascript
AngularJS对动态增加的DOM实现ng-keyup事件示例
2018/03/12 Javascript
layui实现文件或图片上传记录
2018/08/28 Javascript
微信小程序身份证验证方法实现详解
2019/06/28 Javascript
JS实现点星星消除小游戏
2020/03/24 Javascript
react-intl实现React国际化多语言的方法
2020/09/27 Javascript
在Angular项目使用socket.io实现通信的方法
2021/01/05 Javascript
[02:47]2018年度DOTA2最佳辅助位选手4号位-完美盛典
2018/12/17 DOTA
pyQt4实现俄罗斯方块游戏
2018/06/26 Python
matplotlib给子图添加图例的方法
2018/08/03 Python
对numpy中的where方法嵌套使用详解
2018/10/31 Python
python实现简单五子棋游戏
2019/06/18 Python
关于python pycharm中输出的内容不全的解决办法
2020/01/10 Python
Python基于network模块制作电影人物关系图
2020/06/19 Python
中英文求职信范文
2014/01/27 职场文书
保密承诺书范文
2014/03/27 职场文书
商业街策划方案
2014/05/31 职场文书
政风行风评议工作总结
2014/10/21 职场文书
2014年行政工作总结
2014/11/19 职场文书
保洁员岗位职责
2015/02/04 职场文书
大学毕业晚会开场白
2015/05/29 职场文书
师范生见习自我总结
2015/06/23 职场文书
小学教师教育随笔
2015/08/14 职场文书
MongoDB orm框架的注意事项及简单使用
2021/06/20 MongoDB