matplotlib 中文字体问题

阿里云协同办公工具Teambition 0元试用>>> hot3.png

matplotlib 中文字体问题

简介

Matplotlib 是一个 Python 的绘制二维图形的模块。它利用了 克隆了许多 Matlab 中的函数, 用以帮助用户轻松地获得高质量的二维图形。Matplotlib 可以绘制多种形式的图形包括普通的线图,直方图,饼图,散点图以及误差线图等;可以比较方便的定制图形的各种属性比如图线的类型,颜色,粗细,字体的大小等;它能够很好地支持一部分 TeX 排版命令,可以比较美观地显示图形中的数学公式。

系统版本
Distributor ID: Debian
Description:    Debian GNU/Linux 8.5 (jessie)
Release:        8.5
Codename:       jessie

matplotlib版本
---
Metadata-Version: 2.0
Name: matplotlib
Version: 1.5.1

全局修改

1.修改字体

查找系统中的中文字体,如果没有找到中文字体的话就安装一个

fc-list :lang=zh -f "%{family}\n"

文泉驿微米黑,文泉驛微米黑,WenQuanYi Micro Hei
文泉驿等宽正黑,文泉驛等寬正黑,WenQuanYi Zen Hei Mono
Droid Sans Fallback
Fixed
文泉驿正黑,文泉驛正黑,WenQuanYi Zen Hei
Fixed
文泉驿等宽微米黑,文泉驛等寬微米黑,WenQuanYi Micro Hei Mono
文鼎PL简报宋,AR PL SungtiL GB
文泉驿点阵正黑,文泉驛點陣正黑,WenQuanYi Zen Hei Sharp

/usr/local/lib/python3.4/dist-packages/matplotlib/mpl-data/matplotlibrc 拷贝到 ~/.local/share/matplotlib/matlotlibrc

vim ~/.local/share/matplotlib/matplotlibrc

添加中文字体

2.修改符号

按照第一步修改后,中文字体可以正常展示,但是负号却不能展示。所以需要修改符号,不使用Unicode字符。

修改符号字体

局部修改

# coding:utf-8

# 字体设置
def conf_zh(font_name):
    from pylab import mpl
    mpl.rcParams['font.sans-serif'] = [font_name]
    mpl.rcParams['axes.unicode_minus'] = False 

def run():
    import matplotlib.pyplot as plt
    import numpy as np

    t = np.arange(-5*np.pi, 5*np.pi, 0.001)
    y = np.sin(t)/t
    my_post = plt.plot(t, y)
    plt.title('title中文测试') 
    plt.xlabel('这里是X坐标')
    plt.ylabel('这里是Y坐标')

    plt.show()
if __name__ == "__main__":
    conf_zh("Droid Sans Fallback")
    run()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值