zoukankan      html  css  js  c++  java
  • matplotlib的使用——坐标能见度设置

    坐标能见度设置常用函数

    set_bbox方法

    对坐标进行透明度设置的关键性代码是:

    for label in ax.get_xticklabels() + ax.get_yticklabels():
        label.set_fontsize(12)
        label.set_bbox(dict(facecolor='white',
        					edgecolor='None', 
        					alpha=0.7, 
        					zorder=2))
    

    该代码的执行顺序是首先获取x轴和y轴的坐标tick的标签labels,然后设置字体的大小为12,之后使用set_bbox方法,传入一个字典,字典的参数可以包含以下部分:
    1、facecolor:代表其前景色。
    2、edgecolor:代表其边框颜色。
    3、alpha:代表透明度为多少,float型0~1。
    4、zorder:是图层次序的关键参数,越大表示在越上层,越小表示在越底层,其含义与PowerPoint内的图层次序类似,因此不仅要设置labels的zorder,还要设置线的zorder。

    plt.plot(x,y1,zorder = 1)
    

    应用示例

    import matplotlib.pyplot as plt
    import numpy as np
    
    x = np.linspace(-1,1,50)
    y1 = 5*x**2 - 1
    
    plt.xlim((-1,1))
    plt.ylim((-2,5))
    newTicks = np.linspace(-1,1,11)
    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,y1,zorder = 1)
    # 获得当前的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))
    
    for label in ax.get_xticklabels() + ax.get_yticklabels():
        label.set_fontsize(12)
        label.set_bbox(dict(facecolor='white', edgecolor='none', alpha=0.7, zorder=2))
    plt.show()
    

    结果为:

    在这里插入图片描述

    天道酬勤 循序渐进 技压群雄
  • 相关阅读:
    3.22-3.29课题(拼团系统)进度汇报
    结对编程二--单元测试
    个人作业2——英语学习APP案例分析
    第三周进度报告(拼团系统项目)
    结对编程1
    启动Tomcat提示:指定的服务未安装
    (C#)DataTable导出Excel
    支持向量机通俗导论(理解SVM的三层境界)
    LIBSVM在Matlab下的使用
    dev中 使用一些控件后,窗体屏蔽右键某些菜单
  • 原文地址:https://www.cnblogs.com/wuyuan2011woaini/p/15682262.html
Copyright © 2011-2022 走看看