Python利用Matplotlib绘图无法显示中文字体的两种解决方案,
Python利用Matplotlib绘图无法显示中文字体的两种解决方案,
目录
- 问题描述
- 解决方法一:
- 解决方法二:
- 补充:
- 总结
问题描述
在Python利用Matplotlib绘图的时候,无法显示坐标轴上面的中文和标题里面的中文
import numpy as np from matplotlib import pyplot as plt import chinesename cn = chinesename.ChineseName() name_list = cn.getNames(10) rand_numbers = np.random.choice(np.arange(1,11),size=10,replace=False) plt.xlabel('name') plt.ylabel('number') plt.plot(name_list,rand_numbers,'ob') plt.show()
运行显示:
解决方法一:
#解决制图时不显示中文的方法,设置字体 import matplotlib matplotlib.rc("font", family='Microsoft YaHei')
解决方法二:
plt.rcParams['font.sans-serif'] = 'SimHei'
两种方法都可以使中文正常显示
补充:
- SimSun :宋体;KaiTI:楷体;Microsoft YaHei:微软雅黑
- LiSu:隶书;FangSong:仿宋;Apple LiGothic Medium:苹果丽中黑;
此外,在图表中可以显示中文后,需要对‘-’的显示进行操作,不然数据中的负号会显示不了,
import numpy as np from matplotlib import pyplot as plt #解决制图时不显示中文的方法一 import matplotlib matplotlib.rc("font", family='LiSu') ##解决制图时不显示中文的方法二 # plt.rcParams['font.sans-serif'] = 'SimHei' x = np.arange(-10,10) y = x*2+5 plt.title('图表Y=X×2+5') plt.xlabel('x值') plt.ylabel('y值') plt.plot(x,y) plt.show()
只需加上如下代码即可:
#当字体支持中文后,必须设置负号,否则当数值中出现负号就无法显示 plt.rcParams['axes.unicode_minus']=False
总结
到此这篇关于Python利用Matplotlib绘图无法显示中文字体的两种解决方案的文章就介绍到这了,更多相关Python Matplotlib绘图无法显示中文字体内容请搜索3672js教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持3672js教程!
您可能感兴趣的文章:- Python使用matplotlib绘图无法显示中文问题的解决方法
- Python利用Matplotlib绘图无法显示中文字体的解决方案
- Python报错之如何解决matplotlib绘图中文显示成框框问题
相关内容
- Python matplotlib设置多子图、子图间距及外边距的几种方
- Flask SocketIO 实现动态绘图,WebSocket是
- 大数据分析/机器学习基础之matplotlib绘图篇,三、安装
- 【matplotlib 实战】--箱型图,是一种用作显示一组数
- 【matplotlib 实战】--雷达图,雷达图是一种显示多变
- 【matplotlib 实战】--热力图,它通过使用颜色编码来
- 【matplotlib 实战】--漏斗图,它的起始总是最大,并
- 【matplotlib 实战】--气泡图,与散点图不同的是,每
- 【matplotlib 实战】--散点图,散点图常被用于分析变
- 【matplotlib 实战】--南丁格尔玫瑰图,虽然南丁格尔玫瑰
评论关闭