文档章节

python matplotlib 中文字体设置

psyche_pdg
 psyche_pdg
发布于 2017/07/17 17:57
字数 291
阅读 13
收藏 0

matplotlib是画图利器,可惜中文支持不够好,不设中文字体画出的图片里面的中文全是小框框,笔者也是google了许多次,尝试了好几种方法,终于弄对了。

思路就是找一个ttf文件,可以直接用Windows系统里面ttf文件,然后创建自己的font,将文字使用的font设置为自己创建的font就可以了。

具体如下

from matplotlib.font_manager import FontProperties

myfont = FontProperties(fname=os.path.join('STSONG.ttf')) //这里请写上自己的ttf路径

创建好了自己的font,剩下的就是把需要中文显示的地方设成myfont就可以了。

 

比如饼状图, 饼状图的每一块需要遍历出来单独设置

fig1, ax1 = plt.subplots()
pie, l_text, p_text = ax1.pie(fracs, colors=COLORS, explode=tuple(explodes), labels=labels, 
                      labeldistance=1.1, autopct='%1.2f%%', startangle=90, pctdistance=0.95)

for t in l_text:
    t.set_fontproperties(myfont)

 

x, y轴的字体这样设置

plt.xlabel('x zhou', fontproperties=myfont)
plt.ylabel('y zhou', fontproperties=myfont)

 

legend的字体这样设

plt.legend(loc=4, borderaxespad=0., prop=myfont)

是不是超简单, 只要找好了需要的ttf字体文件,将设字体的地方用myfont代替就可以了。

© 著作权归作者所有

共有 人打赏支持
psyche_pdg
粉丝 0
博文 4
码字总数 1697
作品 0
成都
高级程序员
python3使用matplotlib画图支持中文

python3使用matplotlib画图,因python3默认使用中unicode编码码,所以在写代码时不再需要写 plt.xlabel(u'性别')而是直接写plt.xlabel('性别'); 安装matplotlib时需要six,numpy,等组件。在w...

独钓渔
2015/03/30
0
0
matplotlib中文显示问题的解决

法一: 我发现上面的方法并不能完全使得sage支持中文,首先,sage对中文的支持体现在三个方面,matplotlib,sage自己的plot,latex。暂时我能做到的就是matplotlib这个,其他两个的中文支持我...

LCZ777
2013/11/20
0
0
Python-Passing a matplotlib figure to HTML (flask)

最近因工作需要,需要将决策树生成的图在html上展示,给专业的人员用来做修改。有几个坑,现在记录下。 再尝试了R的rpart,scikit-learn的decision tree之后,发现效果都跟业务要求有差距,因...

JxKing
2016/04/16
0
0
matplotlib 中文字体问题

matplotlib 中文字体问题 简介 Matplotlib 是一个 Python 的绘制二维图形的模块。它利用了 克隆了许多 Matlab 中的函数, 用以帮助用户轻松地获得高质量的二维图形。Matplotlib 可以绘制多种...

雨中人X
2016/07/28
50
0
4.python数据分析与展示-----Matplotlib库入门

1.Matplotlib库介绍 Python优秀的数据 可视化第三方库 2.Matplotlib库的使用 Matplotlib库由各种可视化类构成,内部结构复杂,受Matlab启发,matplotlib.pyplot是绘制各类可视化图形的命令子...

bxg1065283526
04/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

7 个致命的 Linux 命令

导读 如果你是一个 Linux 新手,在好奇心的驱使下,可能会去尝试从各个渠道获得的命令。以下是 7 个致命的 Linux 命令,轻则使你的数据造成丢失,重则使你的系统造成瘫痪,所以,你应当竭力避...

问题终结者
今天
0
0
设计模式:工厂方法模式(工厂模式)

工厂方法模式才是真正的工厂模式,前面讲到的静态工厂模式实际上不能说是一种真正意义上的设计模式,只是一种变成习惯。 工厂方法的类图: 这里面涉及到四个种类: 1、抽象产品: Product 2、...

京一
今天
0
0
区块链和数据库,技术到底有何区别?

关于数据库和区块链,总会有很多的困惑。区块链其实是一种数据库,因为他是数字账本,并且在区块的数据结构上存储信息。数据库中存储信息的结构被称为表格。但是,区块链是数据库,数据库可不...

HiBlock
今天
0
0
react native 开发碰到的问题

react-navigation v2 问题 问题: static navigationOptions = ({navigation, navigationOptions}) => ({ headerTitle: ( <Text style={{color:"#fff"}}>我的</Text> ), headerRight: ( <View......

罗培海
今天
0
0
Mac Docker安装流程

久仰Docker大名已久,于是今天趁着有空,尝试了一下Docker 先是从docker的官网上下载下来mac版本的docker安装包,安装很简易,就直接拖图标就好了。 https://www.docker.com/products/docker...

writeademo
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部