300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > plt.rcParams(可解决matplotlib无法显示中文和负号的问题)

plt.rcParams(可解决matplotlib无法显示中文和负号的问题)

时间:2020-12-19 05:51:12

相关推荐

plt.rcParams(可解决matplotlib无法显示中文和负号的问题)

plt.rcPrarms的使用方法以及能解决的问题

import matplotlib.pyplot as plt

import matplotlib

字体

matplotlib.rcParams[‘font.family’] = ‘SimHei’ #设置字体

matplotlib.rcParams[‘font.size’] = 10 #设置字体大小

matplotlib.rcParams[‘axes.unicode_minus’]=False #坐标轴的负号正常显示

样式

plt.rcParams[‘font.stretch’] = ‘normal’

plt.rcParams[‘font.style’] = ‘normal’

plt.rcParams[‘font.variant’] = ‘normal’

plt.rcParams[‘font.weight’] = ‘normal’

找到matplotlib包的所在位置,一般在C:\Users****\AppData\Roaming\Python\Python39\site-packages\matplotlib\mpl-data,里面有个配置文件,matplotlibrc,用notepad++打开。在里面找到相应的地方改掉

显示负号:

原先:#axes.unicode_minus : True

改成:axes.unicode_minus : False

正式显示中文:

#font.family : sans-serif 去掉#号

#font.sans-serif : Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Anal, Helvetica, Avant Ga

font.sans-serif : SimHei, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Anal, Helvetica, Avant Ga

→去掉#号,并在:号后加入SimHei

另外,如果在使用了系统内置样式的时候全局设置完了还是出错

建议在每次使用中文时增加一个属性:fontproperties

ax.set_title(“平方数”, fontproperties=‘SimHei’, fontsize=24)

ax.set_xlabel(“值”, fontproperties=‘SimHei’, fontsize=14)

ax.set_ylabel(“值的平方”, fontproperties=‘SimHei’, fontsize=14)

注:如何找到字体存储路径,在matplotlibrc的路径的 ****\fonts\ttf

查找字体路径

print(matplotlib.matplotlib_fname())

查找字体缓存路径

print(matplotlib.get_cachedir())

拓展问题:

import matplotlib.pyplot as plt

input_values = [1, 2, 3, 4, 5]

square = [1, 4, 9, 16, 25]

fig, ax = plt.subplots() # fig 整张图片 ax 图片中的各个图表

ax.plot(input_values,square, linewidth=3)

ax.set_title(“平方数”, fontsize=24)

ax.set_xlabel(“值”, fontsize=14)

ax.set_ylabel(“值的平方”, fontsize=14)

ax.tick_params(axis=‘both’, labelsize=14)

plt.show()

chr(24179)

能看出 24179 是 ASCII码 缺少字体

添加

plt.rcParams[‘font.sans-serif’] = [‘SimHei’] # 手动选择字体,显示中文标签

plt.rcParams[‘axes.unicode_minus’] = False

rcParams的属性:

属性 说明

font.family 用于显示字体的名称

font.style 字体风格,正常’normal’或斜体’italic’

font.size 字体大小,整数字号或者’large’、’x-small’

font.family的属性值:

属性值 说明

SimHei 中文黑体

Kaiti 中文楷体

Lisu 中文隶书

FangSong 中文仿宋

YouYuan 中文幼圆

STSong 华文宋体

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。