zoukankan      html  css  js  c++  java
  • matplotlib坐标轴设置续-【老鱼学matplotlib】

    本次会讲解如何修改坐标轴的位置。

    要修改轴,就要先得到当前轴:plt.gca(),这个函数名挺怪的,其实是如下英文字母的首字母:get current axis,也就是得到当前的坐标轴。

    import numpy as np
    import pandas as pd
    import matplotlib.pyplot as plt
    
    # 生成x轴上的数据:从-1到1,总共有50个点
    x = np.linspace(-1, 1, 50)
    # 定义一个线性方程
    y1 = 2 * x + 1
    # 定义一个二次方程
    y2 = x ** 2
    # 设置x轴的取值范围为:-1到2
    plt.xlim(-1, 2)
    # 设置y轴的取值范围为:-1到3
    plt.ylim(-1, 3)
    # 设置x轴的文本,用于描述x轴代表的是什么
    plt.xlabel("I am x")
    # 设置y轴的文本,用于描述y轴代表的是什么
    plt.ylabel("I am y")
    
    # 设置x刻度:从-1到2,总共5点
    new_ticks = np.linspace(-1, 2, 5)
    plt.xticks(new_ticks)
    
    # 设置y刻度:用文字来显示刻度
    plt.yticks([-2, -1.8, -1, 1.22, 3],
               [r'$really bad$', r'$badalpha$', 'normal', r'$good$', 'really good'])
    
    # 得到当前轴
    ax = plt.gca()
    # 当前轴中有4个脊梁,这里把右边的脊梁设置成none
    ax.spines['right'].set_color('none')
    # 把上面的脊梁也设置成none
    ax.spines['top'].set_color('none')
    # 把下面的脊梁用作x轴
    ax.xaxis.set_ticks_position('bottom')
    # 把左边的脊梁用作y轴
    ax.yaxis.set_ticks_position('left')
    # 设置下面脊梁原点位置
    ax.spines["bottom"].set_position(('data', -1))
    # 设置左边脊梁的原点位置
    ax.spines["left"].set_position(("data", 0))
    plt.plot(x, y2)
    # 绘制红色的线宽为1虚线的线条
    plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--')
    # 显示图表
    plt.show()
    
    

    显示图为:

  • 相关阅读:
    Codeforces 166E. Tetrahedron
    Codeforce 687A. NP-Hard Problem
    Codeforces 570C. Replacement
    Codeforces 554B. Ohana Cleans Up
    Codeforces 482A. Diverse Permutation
    Codeforces 431C. k-Tree
    Codeforces 750B. Spider Man
    Codeforces 463A. Caisa and Sugar
    Codeforces 701B. Cells Not Under Attack
    Codeforces 445A. DZY Loves Chessboard
  • 原文地址:https://www.cnblogs.com/dreampursuer/p/7853659.html
Copyright © 2011-2022 走看看