首先看看系统装了中文字体没?命令:

fc-list :lang=zh

如果没安装,需要去下载或者从win复制一份到ubuntu,

在/usr/share/fonts文件夹下创建一个chinese文件夹,把字体文件放下面

然后依次运行命令

  • sudo mkfontscale
  • sudo mkfontdir
  • fc-cache

到这里安装已完成,检查是否成功,运行fc-list :lang=zh

---------------------------------

接下来找到matplotlib安装的位置去修改配置文件,可以在python中运行下面的代码

import matplotlib
matplotlib.matplotlib_fname()

找到具体路径……/site-packages/matplotlib/mpl-data/matplotlibrc

然后进入vim ,修改matplotlibrc文件

  • 先找到 #font.family,去掉这行开头的“#”,使其生效 
  • 将sans-serif替换为你安装的字体(比如SimHei,黑体),同样去掉“#”
  • 添加完字体名字,再找到#axes.unicode_minus,去掉“#”,并把“True”改成“False”,这样就可以正常显示负号

保存退出

这时候刷新脚本也不一定会正确显示,建议直接清除matplotlib缓存,运行如下命令(记得修改运行的目录)

rm -rf /home/who/.cache/matplotlib

这样就完美解决了,windows下更简单了,直接修改配置matplotlibrc文件即可

解决ubuntu18环境matplotlib无法正常显示中文的更多相关文章

  1. Ubuntu下用matplotlib作图时显示中文

    之前在Ubuntu下用matplotlib作图的时候发现无法正常显示中文,查了一番以后发现是Ubuntu系统和matplotlib库没有共同可显示的中文字体库的原因.用此文章的方法可以解决这一问题. ...

  2. 【原创】JavaFx程序解决Jupyter Notebook导出PDF不显示中文

    0.ATTENTION!!! JavaFx里是通过Java调用控制台执行的的jupyter和xelatex指令, 这些个指令需要在本地安装Jupyter和MikTeX之后才能正常在电脑上运行 1.[问 ...

  3. ubuntu下使用matplotlib绘图无法显示中文label

    原因是字体导致的.大家的做法基本都是搞一个windows上的字体文件(simhei.ttf, 点我fq下载)然后刷新一下缓存文件. 只不过百度搜到第一篇CSDN的博客,写的很不靠谱(不是所有的CSDN ...

  4. 【转】 Python 中,matplotlib绘图无法显示中文的问题

    在python中,默认情况下是无法显示中文的,如下代码: import matplotlib.pyplot as plt # 定义文本框和箭头格式 decisionNode = dict(boxsty ...

  5. Python 中,matplotlib绘图无法显示中文的问题

    在python中,默认情况下是无法显示中文的,如下代码: import matplotlib.pyplot as plt # 定义文本框和箭头格式 decisionNode = dict(boxsty ...

  6. 解决Ubuntu 16.04 环境下Python 无法显示中文的问题

    一.下载中文字体(https://pan.baidu.com/s/1EqabwENMxR2WJrHfKvyrIw 这里下载多是SImhei字体) 安装字体:解压:unzip SimHei.zip拷贝字 ...

  7. python matplotlib.plot画图显示中文乱码的问题

    在matplotlib.plot生成的统计图表中,中文总是无法正常显示.在网上也找了些资料,说是在程序中指定字体文件,不过那样的话需要对plot进行很多设置,而且都是说的设置坐标轴标题为中文,有时候图 ...

  8. thinkphp -- 解决连接mssql后台管理菜单显示中文乱码问题(备忘)

    一开始使用的是mysql,数据库的编码是UTF-8 后来换数据库,mysql换成mssql2005,数据库编码为GBK,管理菜单出现乱码,如下所示(左图正常,右图乱码) 解决方法如下: 第一,查看数据 ...

  9. kali 解决Metasploit拿到shell后显示中文乱码问题

    拿到对方shell后显示的问题如下: 中文乱码解决: chcp 65001 然后 上传下载文件

  10. Sublime text 3 中Package Control 的安装与使用方法和解决Sublime Text 3不能正确显示中文的问题

    Sublime text 3 中Package Control 的安装与使用方法,英文好可以在这个网址看看, 下面简单的说明一下 : https://packagecontrol.io/install ...

随机推荐

  1. Linux系统对于实施人员的价值

    随着互联网的发展,linux系统越来越突显了巨大的作用,很多互联网公司,政府企业,只要用到服务器的地方几乎都能看到linux系统的身影,可以说服务是不是在linux系统跑的代表了企业的技术水平,而与l ...

  2. BUG: kernel NULL pointer dereference, address: 0000000000000008

    问题现象:有台实例是用于压测用的,只要是做TCP连接数压测时,连接数超过100多就会自动重启,各种日志里面看不到任何关于重启的报错 xxx云服务器供应商技术支持,后台工具检测到有panic迹象,但不确 ...

  3. No.2.4

    Flex布局 主轴方向:(使用flex-direction改变元素排列方向) 思考:Flex布局模型中,弹性盒子默认沿着哪个方向排列? 水平方向 思考:如何实现内容垂直排列? 修改主轴的方向 主轴默认 ...

  4. Android悬浮窗全屏不获取焦点但是可以漏出软键盘的办法

    addFlags( WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);的作用是在不获取焦点的时候显示软键盘. 接触这个标记 getWindow().c ...

  5. linux top 指令各列含义

    Linux 的 top 指令用于显示机器上正在运行的进程的信息.下面是 top 指令各列的含义: PID:进程 ID,用于标识进程. USER:进程所有者的用户名. PR:进程优先级. NI:进程的& ...

  6. 【MySQL】MySQL时区问题、数据库时间相差8小时问题解决

    解决:修改MySQL系统时区,改为东8区. 在命令行界面或者可视化工具下(如:Navicat)依次运行以下命令. 1.查询当前系统时间 select now(); 2.检查MySQL系统时区 show ...

  7. docker指令 —— MySQL一条龙服务

    一.拉取MySQL镜像 简单粗暴拉取: docker pull mysql 拉取合适的版本,docker mysql Tag: # 例如拉取8.0.25 docker pull mysql:8.0.2 ...

  8. 三个任务(blog)版

    三个任务 第一个任务备份服务 nfs和backup两台服务器 nfs客户端 --> backup服务端 服务端配置(backup服务器) 1)安装rsync服务 yum install -y r ...

  9. winform 中 label透明化

    label1.BackColor = Color.Transparent;//设置背景颜色为透明 label1.Parent = pictureBox1;//将pictureBox1设为标签的父控件, ...

  10. nginx的优化及防盗链

    简介: Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为"engine X",是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/S ...