zoukankan      html  css  js  c++  java
  • linux下python中文乱码解决方案

    1. 场景描述

    linux服务器下安装了Anaconda3,执行Pyhton的K-means算法,结果出现如下图的中文字符乱码。上次已经解决了,忘记记录解决流程了,这次配置了一台新的服务器,又出现,默认不配置的话matplotlib画图就会乱码,这次把解决过程记录下,希望能帮助自己和有需要的朋友。

    2. 解决方案

    网上有好几个解决方案,只介绍自己实战可行的。

    1. 查看matplotlib字体位置

    python
    import matplotlib 
    print(matplotlib.matplotlib_fname())
    
    #记录下来,字体位置我的是:/home/ruanjianlaowang/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibrc
    
    exit()
    

    2. 上传字体到服务器

    cd /home/ruanjianlaowang/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/ttf
    
    通过ftp或者其他方式,将字体传上去,我们传的是:simhei.ttf
    

    3. 删除字体缓存

    cd  ~/.cache/matplotlib
    rm -rf *
    

    4. 重启python应用

    nohup python k-means.py &
    

    说明: 假如还没生效,再更改个配置文件试试。(我们以前没更改这个配置文件,但是这次发生了个插曲,这次用的jmeter测试,一直还是乱码,后来改了这个还是不行,原来是jmeter的问题)

    cd  /home/ruanjianlaowang/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data
    
    vi matplotlibrc 
    font.family         : sans-serif  #去掉前面的#
    font.serif          : simhei, DejaVu Serif,   #新加了simhei
    

    插曲

    这次用的jmeter测试,发现都更改了还是乱码,后来jmeter的请求中增加了utf-8参数才可以。


    I’m 「软件老王」,如果觉得还可以的话,关注下呗,后续更新秒知!欢迎讨论区、同名公众号留言交流!

  • 相关阅读:
    解决tomcat CNTA-2020-0004漏洞
    简单理解程序如何控制硬件的
    【Spring】Spring Session的简单搭建与源码阅读
    【Spring】Spring,我的零散使用杂记
    CORS跨域、Cookie传递SessionID实现单点登录后的权限认证的移动端兼容性测试报告
    【Fiddler】Fiddler抓包
    一起学习Maven
    分布式系统接口调用回滚方案
    【FastDFS】FastDFS在CentOS的搭建
    【Java】Java日志框架Logback的简单例子
  • 原文地址:https://www.cnblogs.com/ruanjianlaowang/p/11397828.html
Copyright © 2011-2022 走看看