精华内容
下载资源
问答
  • 参考:...首先查看matplotlib已加载的字体: import matplotlib.font_manager a = sorted([f.name for f in matplotlib.font_manager.fontManager.ttflist]) for i in a...

    首先查看matplotlib已加载的字体:

    import matplotlib.font_manager
    
    a = sorted([f.name for f in matplotlib.font_manager.fontManager.ttflist])
    
    for i in a:
        print(i)
    

    然后找到Mac自身带的字体

    command-空格,进行搜索查找字体册,选择中文-华文仿宋

    在这里插入图片描述
    然后在华文仿宋上右键-在访达中显示,但是据说.ttf格式的才能用,我这里华文仿宋是.ttc格式的,我没有改动,也成功了,如果实在没成功可以去该格式试试:
    在这里插入图片描述
    然后将其复制到/Users/user/PycharmProjects/python3/venv/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/ttf/下

    然后重新加载新的字体库:

    from matplotlib.font_manager import _rebuild
    
    _rebuild()
    

    然后你再使用上面的查看字体库的代码就能够看见Songti SC这个字体了

    然后运行的时候为:

    #coding:utf-8
    import matplotlib.pyplot as plt
    x = [1,2,3,4,5]
    y = [1,4,9,16,25]
    #调用绘制的plot方法
    plt.plot(x, y, linewidth=5)
    plt.xlabel('x')
    plt.ylabel('y=x^2')
    #不支持中文的解决办法
    plt.rcParams['font.sans-serif']=['Songti SC'] #用来正常显示中文标签
    #添加标题
    plt.title('多个点绘制折线图') #会出现乱码
    
    #显示绘制的图
    plt.show()
    

    就成功了:
    在这里插入图片描述
    参考文档:

    https://blog.csdn.net/kaizei_pao/article/details/80795377

    https://www.cnblogs.com/wanghui-garcia/p/11195925.html

    展开全文
  • 问题就截图了, jupyter-notebook中,使用plt画出的图像,中文都是小方格(乱码) 解决方法如下 1. Linux安装字体 把Windows的字体C:/Windows/Fonts复制到Linux系统的存放字体路径/usr/share/fonts下, 如图: cd到/usr/...

    前言:
    问题就不截图了, jupyter-notebook中,使用plt画出的图像,中文都是小方格(乱码)
    解决方法如下

    1. Linux安装字体

    把Windows的字体C:/Windows/Fonts复制到Linux系统的存放字体路径/usr/share/fonts下, 如图:
    1430038-20190530165913114-239063674.png
    cd到/usr/share/fonts/Fonts,也就是拷贝来的文件夹, 建立字体索引信息,更新字体缓存,让字体生效, 运行命令:
    mkfontscale && mkfontdir && fc-cache -fv && source /etc/profile && fc-list |wc -l

    查看字体fc-list :lang=zh
    1430038-20190530170642707-1171818697.png

    2. 添加配置

    这里有很多版本,比如:

    import matplotlib
    matplotlib.use('qt4agg')
    #指定默认字体
    matplotlib.rcParams['font.sans-serif'] = ['SimHei']
    matplotlib.rcParams['font.family']='sans-serif' #解决负号'-'显示为方块的问题
    matplotlib.rcParams['axes.unicode_minus'] = False

    我的设置是:

    from pylab import mpl
    mpl.rcParams['font.sans-serif'] = ['STSong']
    mpl.rcParams['axes.unicode_minus'] = False

    如图,可以正常显示中文了
    1430038-20190530171512486-883837364.png

    3. 如果还不行,清除缓存

    如果添加了第二部的配置,但还是显示中文乱码, 那么有可能是缓存的问题, 执行rm -r ~/.cache/matplotlib
    1430038-20190530171915636-1994803104.png

    转载于:https://www.cnblogs.com/geoffreyone/p/10950790.html

    展开全文
  • linux 环境下matplotlib 画图时不支持中文解决方案 1. 代码上设置一下你需要使用的代码 import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['SimHei'] # 使用黑体来正常显示中文标签 plt....

    linux 环境下matplotlib 画图时不支持中文解决方案

    1. 代码上设置一下你需要使用的代码

    import matplotlib.pyplot as plt
    
    plt.rcParams['font.sans-serif'] = ['SimHei']  # 使用黑体来正常显示中文标签
    plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号
    

    如果通过上面的设置成功显示中文就最nice了,但如果上面设置之后,还是会报错

    Font family [‘sans-serif’] not found.Falling back to DejaVu Sans

    2. 检查是否缺少字体

    该错误说明很大概率是缺少了SimHei这种字体,可以通过如下方式查看matplotlib中已有字体有哪些

    import matplotlib.pyplot as plt
    from matplotlib import font_manager
    
    for font in font_manager.fontManager.ttflist:
        # 查看字体名以及对应的字体文件名
        print(font.name, '-', font.fname)
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-t5o0QajD-1629707270746)(./1629706166606.png)]

    查看一下全部字体名称,看一下你需要使用的字体名称是否在其中,如果不在其中就需要进行添加。

    matplotlib的字体来自两个部分,一个是matplotlib自带的字体,还有一个是系统自带的字体。

    注意:字体名称字体文件名是两个不同概念,比如上图中微软雅黑的字体名称叫“Microsoft YaHei” 但是其字体文件名叫“wryh.ttf”.
    在代码中进行设置的时候,需要使用字体名称

    3. 下载字体文件并放到系统字体目录下

    可以从该地址下载黑体字体文件

    可以自己在网上下载黑体字体“SimHei”对应的文件,然后添加到系统字体所在目录。系统字体所在目录可以通过命令 “fc list”知道
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kllXX5cl-1629707270751)(./1629705252465.png)]

    将黑体字体文件放进去系统字体目录:
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5Dh39YVe-1629707270758)(./1629706912668.png)]

    再执行一下代码就可以看到字体已经加进去

    import matplotlib.pyplot as plt
    from matplotlib import font_manager
    
    for font in font_manager.fontManager.ttflist:
        # 查看字体名以及对应的字体文件名
        print(font.name, '-', font.fname)
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SFdG7Qle-1629707270761)(./1629707054831.png)]

    5.生效

    删除一下之前的旧缓存来生成新的缓存

    # python 终端获取缓存路径
    import matplotlib
    print(matplotlib.get_cachedir())
    # /root/.cache/matplotlib
    

    删除缓冲目录

    rm -rf /root/.cache/matplotlib

    最后运行一下你的代码,就可以正常显示中文字体了。

    参考博客

    matplotlib对中文的支持(Font family [‘sans-serif’] not found.Falling back to DejaVu Sans)

    展开全文
  • 因为matplotlib默认字体中是没有中文的,所以,当我们使用中文做图形标签时,将会无法显示,如上图,标题的“年度乘客总量”没有显示出来。解决这个问题需要将中文字体放到工具包的特定子文件中,具体操作如下:1. ...

    这里写图片描述

    因为matplotlib默认字体中是没有中文的,所以,当我们使用中文做图形标签时,将会无法显示,如上图,标题的“年度乘客总量”没有显示出来。解决这个问题需要将中文字体放到工具包的特定子文件中,具体操作如下:

    1. matplotlib的安装路径

    在python IDE中输入查看路径

    import matplotlib as mlp
    print mlp

    2. 在终端中查看matplotlib字体的路径

    matplotlib的字体放在工具包子文件夹mpl-data>>>fonts>>>ttf中
    这里写图片描述
    可以看到工具包包括的字体
    在终端中输入pwd获得当前路径,复制下来。

    3. 将中文字体复制到matplotlib工具包文件中

    在终端用 cp -r (中文字体当前路径) (粘贴matplotlib工具包的字体路径)

    4. 重复第2步,看看中文字体是否在工具包字体文件夹中

    #在title参数中加入选定字体
    myfont=FontProperties(fname='/Applications/anaconda3/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf/SourceHanSansCN-Normal.otf')
    plt.title(u'年度乘客总量',fontproperties=myfont,fontsize=15)

    最后运行代码,就可以显示出中文
    这里写图片描述

    展开全文
  • 在使用pyplot函数的时候, xlabel 和 ylabel 以及标题都不显示中文,且控制台有报错,原来是pyplot默认是不支持中文的 通过以下方法设置 1. 通过plot.rcParams修改字体实现 font.family:字体名 plt.rcParams[...
  • 在使用matplotlib作图时会默认不支持中文显示,如图 解决方案:从网上下载一个中文字体:微软雅黑.ttf 下载链接 然后通过font_manager设置即可 关键代码: from matplotlib import font_manager my_font = font_...
  • 我们在使用matplotlib绘图的时候 往往想用中文表示行列标签或者表头,但是如果设置这个东西,那么很可能中文乱码 措施: 在代码 最开始的地方加入以下代码 matplotlib.rcParams['font.family'] = 'SimSun' ...
  • Matplotlib是一个很好的作图软件,但是python下默认不支持中文,所以需要做一些修改,方法如下: 1.在python安装目录的Lib目录下创建ch.py文件。 文件中代码为: 保存,以后通过以下代码调用: #-*-coding:utf-8-*-...
  • 微软雅黑字体解决matplotlib不能正常显示中文,方便用户下载使用,下载后解压安装双击安装即可,测试系统是win10系统,其他系统应该也是支持
  • matplotlib直接支持中文标题的方法

    千次阅读 2019-10-18 22:43:31
    使matplotlib直接支持中文标题的方法有很多,可以通过代码导入一些字体库,设置一些字体的属性,但那都会使代码多一些重复的导入操作这里讲一种一次配置,永久解决的办法。 1 找到matplotlib配置文件的绝对路径 ...
  • 在默认情况下,Matplotlib在设置title和标注text时如果使用中文,会出现尴尬的框框。使用以下两种方法可以轻松化解尴尬,让您在使用Matplotlib绘图时展露愉悦笑容。1,使...
  • 前几天使用matplotlib 绘图的时候发现无法使用中文...python中的matplotlib支持Unicode编码,默认是显示中文的. 解决方案 解决方案1 python文件中添上一段语句 plt.rcParams['font.sans-serif']=['Simhei'] 之后
  • 在很长一段时间里用Python绘图,matplotlib不能很好的显示中文,起初是认为我的pycharm里的设置问题,但是发现同样的问题在spyder里也同样的出现了,虽然有的地方可以用英文实在不行用拼音。。。但是在作图这里...
  • 参考:... 首先查看matplotlib已加载的字体: import matplotlib.font_manager a = sorted([f.name for f in matplotlib.font_manager.fontManager.ttflist]) ...
  • 实际上,matplotlib支持unicode编码的,不能正常显示汉字主要是没有找到合适的中文字体,在matplotlib的配置文件"D:\download\python\python3\Lib\site-packages\matplotlib\mpl-data\matplotlibrc"中,可以看到字...
  • Matplotlib默认不支持中文显示,显示为方块乱码。 第1步,下载SimHei.ttf文件,下载链接 第2步,解压,复制SimHei.ttf到Matplotlib的字体文件夹。 显示Python库的具体路径 pip show matplotlib 再进入到字体文件夹...
  • Mac中使用matplotlib中文不显示如何解决? 1. 首先查看matplotlib已加载的字体。 具体通过如下代码实现: import matplotlib.font_manager a = sorted([f.name for f in matplotlib.font_manager.fontManager....
  • Windows下在pycharm中输入...from matplotlib import pyplot as plt plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签 plt.rcParams['axes.unicode_minus']=False # 用来正常显示负号 ...
  • Matplotlib如何使用中文字体问题导入 问题导入 遇到这个问题是因为想用seaborn画heatmap,同时又希望坐标轴能够显示中文,便于查看,然而问题它又又又出现了!!是的,后来查资料知道,Matplotlib自带字体只能显示...
  • Python matplotlib绘图时汉字显示正常

    万次阅读 2017-03-02 09:43:44
    Matplotlib是一个很好的作图软件,但是python下默认不支持中文,所以需要做一些修改,方法如下:1.在python安装目录的Lib目录下创建ch.py文件。文件中代码为:保存,以后通过以下代码调用:#-*-coding:utf-8-*- #...
  • 在使用matplotlib绘图时,经常会用到中文给图表添加描述,在不加处理的情况下,matplotlib里面的字体是不支持显示中文的,显示的是一堆乱码(方框?),怎么解决这个问题?只需要几行代码! import matplotlib my_...
  • matplotlib 绘图中文标签正常显示

    千次阅读 2019-04-26 14:51:51
    matplotlib 画图时发现中文标签不能正常显示,如下图: 在绘图前插入如下代码: plt.rcParams['font.sans-serif'] = ['SimHei'] #显示中文 就可以显示中文了,如下图: ...
  • from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei']
  • matplotlib中文设置

    2019-10-14 10:21:17
    Python3环境下的matplotlib默认不支持中文字体,其原因为: (1)matplotlib的内置字体库中没有对应中文字体 (2)matplotlib的配置文件中默认的字体非中文字体 具体的解决方案包括如下步骤: 步骤一:查找...
  • matplotlib完美中文显示

    万次阅读 多人点赞 2018-09-20 16:40:38
    python中使用matplotlib显示中文时,会遇到一些问题...# 支持中文 plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签 plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号 完整的例...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 35,875
精华内容 14,350
关键字:

matplotlib不支持中文