定制坐标轴

matplotlib中提供了定制坐标轴的高级知识,便于用户灵活地操作坐标轴,使坐标轴能很好地配合图表

一、坐标轴的概述

该函数常用参数的含义如下:
     xaxis :获取x轴。
     yaxis :获取y轴。
     spines :获取包含全部轴脊的勺字典

二、隐藏轴脊

语法格式如下所所示:
axis(option,*args,**kwargs)

     'on':显示轴脊和刻度,等同于 True
     'off' : 隐藏轴脊和刻度,等同于False
     'equal':通过更改轴限设置等比例
     'scaled':通过更改绘图框的尺寸设置等比例
     'tight':设置足够大的限制以显示所有的数据
     'auto':自动缩放

三、隐藏轴脊

语法格式如下所所示:
set_position (self,position)

     'outward' : 表示将轴脊置于移出数据区域指定点数的位置
     'axes':表示将轴脊置于指定的坐标系中(0.0~1.0)
     'data':表示将轴脊置于指定的数据坐标的位置
     'center' : 值为('axes',0.5)
     'zero' : 值为('data',0.0)


四、题目

代码及解释如下: 

# matplotlib中文网 https://www.matplotlib.org
 
# 需求一:绘制某股票一周内收盘价折线图(见运行结果展示图)
 
# 导入所需要的模块
%matplotlib notebook
import numpy as np
import matplotlib.pyplot as plt
 
# 0.设置中文黑体
plt.rcParams["font.sans-serif"] = ["SimHei"]
plt.rcParams["axes.unicode_minus"] = False
 
# 1.准备数据
x_data = np.arange(1,8,1)
y_data = [44.98, 45.02, 44.32, 41.05, 42.08, 42.08, 42.08]   #周末休市
 
# 2.创建画布和坐标系
fig =plt.figure()                   #创建画布
 
#在距画布顶部0.2,左侧0.2的位置上添加一个宽度为0.5、高度为0.5的绘画区域
ax = fig.add_axes((0.2,0.2, 0.5,0.5))
 
ax.plot(x_data,y_data,color='purple',   #绘画折线图,线条颜色为紫色
        marker='o',                     #标记的图形
        markersize=15                   #标记图形的大小为15
       )        
ax.set_xlabel('周日期',             #绘制横坐标名为:周日期
             labelpad=15           #纵标签与横坐标的距离为15
             )           
 
ax.set_ylabel('收盘价($ \yen $)',          #绘制纵坐标名为:收盘价(¥)
              fontdict={'rotation':'horizontal'},   #纵标签水平放置
              labelpad=25)          #纵标签与y轴的距离为25
 
 
# 3.绘图
 
 
# 4.定制刻度
plt.xticks([1,2,3,4,5,6,7],['周一','周二','周三','周四','周五','周六','周日'])     #绘制横坐标标签
 
 
# 5.设置轴标签
# ax.xaxis.set_ticklabels(['周一','周二','周三','周四','周五','周六','周日'])        
 
ax.xaxis.set_tick_params(direction='in',length=8,width=2,labelsize=12,             #绘制横坐标刻度线(刻度线方向朝内,宽度为2,长度为8)
                         labelrotation=30                                          #x轴刻度标签旋转30°
                        )        
ax.yaxis.set_tick_params(direction ='in',length=8,width=2,labelsize=12)       #绘制横坐标刻度线(刻度线方向朝内,宽度为2,长度为8)
 
 
 
# 6.隐藏上轴脊和右轴脊
ax.spines['top'].set_color('none')      #隐藏上轴脊
ax.spines['right'].set_color('none')    #隐藏右轴脊
 
# 7.展示图表
plt.show()

得到运行结果如题:
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值