python matplotlib 设置背景色、轴脊、网格线

1 设置背景颜色

1.1 设置 figure 背景颜色
方法 I:
plt.figure(facecolor='blue',    # 图表区的背景色
           edgecolor='black')    # 图表区的边框线颜色

方法 II:
fig=plt.gcf()
fig.set_facecolor('green')

1.2 设置 axes 背景颜色
方法 I:
a = plt.axes([.65, .6, .2, .2],
             facecolor='k')  # pyplot api 命令-黑色背景
方法 II:
ax1=plt.gca()
ax1.patch.set_facecolor("gray")    # 设置 ax1 区域背景颜色               
ax1.patch.set_alpha(0.5)    # 设置 ax1 区域背景颜色透明度       

1.3 修改 matplotlib 默认参数
plt.rcParams['axes.facecolor']='red'
plt.rcParams['savefig.facecolor']='red'

2 设置轴脊

2.1 去掉轴脊
ax.spines['top'].set_visible(False) #去掉上边框
ax.spines['bottom'].set_visible(False) #去掉下边框
ax.spines['left'].set_visible(False) #去掉左边框
ax.spines['right'].set_visible(False) #去掉右边框

2.2 移动轴脊
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data',0))
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data',0))

2.3 设置边框线颜色
ax = plt.gca() # 获取当前的axes
ax.spines['right'].set_color('blue')
ax.spines['top'].set_color('none')

2.4 设置边框线宽
ax1.spines['left'].set_linewidth(5)

2.5 设置边框线型
ax.spines['left'].set_linestyle('--')

3.设置网格线

3.1 使用 pyplot api 命令
# 显示网各线
plt.grid(true)
# 设置网格线格式:
plt.grid(color='r',    
         linestyle='--',
         linewidth=1,
         alpha=0.3) 

3.2 使用 axes 类面向对象命令
# 同时设置横竖坐标轴上的网格线
ax.grid(color='r',
        linestyle='--',
        linewidth=1,
        alpha=0.3)

# 单独设置X坐标轴上(垂直方向)的网格线
ax.xaxis.grid(color='r',
              linestyle='--',
              linewidth=1,
              alpha=0.3)

# 单独设置Y坐标轴上(水平方向)的网格线
ax.yaxis.grid(color='r',
              linestyle='--',
              linewidth=1,
              alpha=0.3)

 

posted @ 2020-01-13 22:37  赏尔  阅读(39289)  评论(0编辑  收藏  举报