Matplotlib 轴标签和标题

设置轴标签和标题时,如果使用中文,可能会出现乱码情况,可以使用以下两行代码解决

plt.rcParams['font.sans-serif'] = [u'SimHei'] # SimHei就是中文字体
# 因为设置了中文后,负号就乱码了,所以还要设置负号的编码
plt.rcParams['axes.unicode_minus'] = False # 修改坐标轴中符号的编码

1、轴标签

可以使用 xlabel() 和 ylabel() 方法来设置 x 轴和 y 轴的标签。

2、标题

我们可以使用 title() 方法来设置标题。

案例

import matplotlib.pyplot as plt
import numpy as np
x=np.array([1,2,3,4,5])
y=np.array([1,4,9,16,25])
plt.plot(x,y,'.-.',linewidth=1)
plt.title('matplotlib')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

Matplotlib 轴标签和标题_中文字体

3、标题与标签的定位

  • title() 方法提供了 loc 参数来设置标题显示的位置,可以设置为: 'left', 'right', 和 'center', 默认值为 'center'。
  • xlabel() 方法提供了 loc 参数来设置 x 轴显示的位置,可以设置为: 'left', 'right', 和 'center', 默认值为 'center'。
  • ylabel() 方法提供了 loc 参数来设置 y 轴显示的位置,可以设置为: 'bottom', 'top', 和 'center', 默认值为 'center'。

4、使用中文字体

方法有很多种,这里使用系统的字体。 查看字体种类:

from matplotlib import pyplot as plt
import matplotlib
a=sorted([f.name for f in matplotlib.font_manager.fontManager.ttflist])

for i in a:
    print(i)

绘图中添加字体:

plt.rcParams['font.family']=['STFangsong']

实例:

import matplotlib.pyplot as plt

import numpy as np
plt.rcParams['font.family']=['FangSong']

x=np.array([1,2,3,4,5])
y=np.array([1,4,9,16,25])
plt.plot(x,y,'.-.',linewidth=1)
plt.title('绘图',fontsize=25)
plt.xlabel('x轴',loc='right',fontsize=18)
plt.ylabel('y轴',loc='top',fontsize=18)
plt.show()

Matplotlib 轴标签和标题_默认值_02