解决Matplotlib不显示中文,中文乱码问题

matplotlib是英文库,支持英文的显示,但是中文有的时候就不能显示,所以需要设置中文

绘制一个图看看

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-10,10)
y = np.sin(x)

plt.plot(x,y,linewidth=6.0)

解决Matplotlib不显示中文,中文乱码问题_第1张图片

绘制一个中文的标题
plt.plot(x,y,'r',linewidth=2,marker='o',markersize=10,markerfacecolor = 'b',alpha=0.8)
plt.xlabel('xlabel')
plt.ylabel('ylabel')

#标题
plt.title('示例')

解决Matplotlib不显示中文,中文乱码问题_第2张图片

发现中文不显示

设置字体

import matplotlib as mpl
mpl.rcParams['font.sans-serif'] = ['KaiTi']
mpl.rcParams['font.serif'] = ['KaiTi']

解决Matplotlib不显示中文,中文乱码问题_第3张图片

发现负号不显示


import matplotlib as mpl
mpl.rcParams['font.sans-serif'] = ['KaiTi']
mpl.rcParams['font.serif'] = ['KaiTi']
mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题,或者转换负号为字符串

解决Matplotlib不显示中文,中文乱码问题_第4张图片

调整设置seaborn的格式

import matplotlib as mpl
#mpl.rcParams['font.sans-serif'] = ['KaiTi']
plt.rcParams['font.sans-serif']=['SimHei'] #图中文字体设置为黑体
mpl.rcParams['font.serif'] = ['KaiTi']
mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题,或者转换负号为字符串

import seaborn as sns
sns.set_style("darkgrid",{"font.sans-serif":['KaiTi', 'Arial']})   #这是方便seaborn绘图得时候得字体设置

解决Matplotlib不显示中文,中文乱码问题_第5张图片

你可能感兴趣的:(遇见问题解决经验,python,计算机视觉,几何学)