zoukankan      html  css  js  c++  java
  • matplotlib的使用——坐标轴设置部分

    坐标轴设置常用函数及其作用

    1、plt.xlim()和plt.ylim()

    plt.xlim(
    	*args, 
    	**kwargs)
    # 使用方法
    # xlim((left, right))   # set the xlim to left, right  
    # xlim(left, right)     # set the xlim to left, right  
    

    用于设置x坐标轴位于left到right之间

    plt.ylim(
    	*args, 
    	**kwargs)
    # ylim((bottom, top))
    # ylim(bottom, top)
    

    用于设置y坐标轴位于bottom到top之间

    2、plt.xlabel()和plt.ylabel()

    这两个函数用于设置x轴和y轴的标签。
    应用举例:

    plt.xlabel('I am x label')
    plt.ylabel('I am y label')
    

    其x轴上的作用效果如图所示:

    在这里插入图片描述

    3、plt.xticks()和plt.xticks()

    plt.xticks(
    	ticks=None, 
    	labels=None, 
    	**kwargs)
    plt.yticks(
    	ticks=None, 
    	labels=None, 
    	**kwargs)
    

    在传输量仅只有ticks时:

    newTicks = np.linspace(-1,1,10)
    plt.xticks(newTicks)
    

    其可以将x轴坐标设置为-1到1,间隔数为10。
    在传输量有ticks和labels时:

    plt.yticks([-2,-1.0,0,1.5,3], 
               ['really bad','little bad','normal','little good','pretty good'])
    

    其可以将y轴坐标按照一定格式设置字符,-2对应really bad,-1对应little bad,以此类推。
    二者结合的作用效果为:
    在这里插入图片描述

    4、axis操作指令

    axis操作指令可以使得坐标轴的位置、样式发生改变。

    # 可以用于获取当前的axis。
    ax = plt.gca()
    
    # 用于设置坐标轴边的颜色与情况
    # 此时设置图像的上边、右边axis为无色
    ax.spines['right'].set_color('none')
    ax.spines['top'].set_color('none')
    
    # 设置x轴坐标在下部
    ax.xaxis.set_ticks_position('bottom')
    # 设置x轴位于图像y=0处
    ax.spines['bottom'].set_position(('data', 0))
    
    # 设置x轴坐标在左部
    ax.yaxis.set_ticks_position('left')
    # 设置y轴位于图像x=0处
    ax.spines['left'].set_position(('data',0))
    

    示例代码

    本文将两个figure进行对比,两个figure均有各自的特点设置。

    import matplotlib.pyplot as plt
    import numpy as np
    
    x = np.linspace(-1,1,50)
    y1 = 2*x + 1
    y2 = x**2
    
    plt.figure(num=1,figsize=(8,5))
    # 用于设置x轴的范围
    plt.xlim((-1,1))
    # 用于设置y轴的范围
    plt.ylim((-2,5))
    # 设置x轴的名称
    plt.xlabel('I am x label')
    # 设置y轴的名称
    plt.ylabel('I am y label')
    # 将新的x轴上的坐标设置为-1到1间隔数为10
    newTicks = np.linspace(-1,1,10)
    plt.xticks(newTicks)
    # 将y轴坐标按照一定格式设置字符,-2对应really bad,-1对应little bad
    plt.yticks([-2,-1.0,0,1.5,3], 
               ['really bad','little bad','normal','little good','pretty good'])
    # 按照一定格式画线
    plt.plot(x,y2,color = 'red',linewidth = 1.0,linestyle = '--')
    plt.plot(x,y1)
    
    # 新建一幅图像,形成与上一幅图的对比
    plt.figure(num=2,figsize=(8,5))
    plt.xlim((-1,1))
    plt.ylim((-2,5))
    plt.xlabel('I am x label')
    plt.ylabel('I am y label')
    newTicks = np.linspace(-1,1,10)
    plt.xticks(newTicks)
    # y轴字体差别,设置成斜体
    plt.yticks([-2,-1.0,0,1.5,3], 
               [r'$really\ bad$',r'$little\ bad$',r'$normal$',r'$little\ good$',r'$pretty\ good$'])
    plt.plot(x,y2,color = 'red',linewidth = 1.0,linestyle = '--',marker = '.')
    plt.plot(x,y2,'r--.',linewidth = 1.0)
    plt.plot(x,y1)
    # 获得当前的axis
    ax = plt.gca()
    # 设置图像的上边、右边axis为无色
    ax.spines['right'].set_color('none')
    ax.spines['top'].set_color('none')
    
    # 设置x轴坐标在下部
    ax.xaxis.set_ticks_position('bottom')
    # 设置x轴位于图像y=0处
    ax.spines['bottom'].set_position(('data', 0))
    # 设置x轴坐标在左部
    ax.yaxis.set_ticks_position('left')
    # 设置y轴位于图像x=0处
    ax.spines['left'].set_position(('data',0))
    
    print(ax)
    plt.show()
    

    figure1:
    在这里插入图片描述
    figure2:
    在这里插入图片描述

    天道酬勤 循序渐进 技压群雄
  • 相关阅读:
    MySQL开启general_log并设置路径
    mysql日志文件开启及详解:General_log 和 Binlog
    mysql binary like_MYSQL的binary解决mysql数据大小写敏感问题的方法
    分布式系统回滚机制
    ubuntu 后台运行的几种方法!
    ubuntu磁盘分配和挂载
    .NET Core SDK在Windows系统安装后出现Failed to load the hostfxr.dll等问题的解决方法
    数组.html
    温习
    for练习.html
  • 原文地址:https://www.cnblogs.com/wuyuan2011woaini/p/15682396.html
Copyright © 2011-2022 走看看