百科问答小站 logo
百科问答小站 font logo



matplotlib怎么强制让坐标轴和网格线重叠? 第1页

  

user avatar   morder-fox 网友的相关建议: 
      

先确认下,如果题主采用的是直角坐标系,这个 (2,0) 为什么会变为“原点”,还是你想说的是 (0,2)?我就假设你是想说(0,2)好了。那么下一个问题是:为啥你要把“原点”放到 (0,2)?

你可能会说:因为对 的所有区域内,都没有有效点了呀。所以你的判断依据其实是:该点集的x/y方向上的最小值向下取整,作为原点。可以自定义这个边界值写一个函数来实现

       import math def get_lim(dataset):     return (math.floor(min(dataset['x']), math.floor(min(dataset['y']))     

至于这个为什么对不齐,因为matplotlib本身会留一个边界,让图表显示的美观一点。这个在默认的设置里面我好像没有找到,不过,就算找到了,你一样要用一个函数来自定义边界。因为,你在这个例子里可以定义 (0, 2),但是你自己也说了XY范围不定,那我(程序)怎么知道你下个数据集的边界要放在哪里?

顺带,除了plt.xlim()来设置以外,也可以对Axes对象用Axes.axis([x0, y0, x1, y1])来实现。

当然了,还有很多其他的办法来实现。比如0这个位置之所以有网格,是因为0这个位置有一个xticksxtickslabels对象,而所谓的xy轴,其实是Spine对象 。你也可以人为设置xticksSpine出现的位置,并令它们重合即可。




  

相关话题

  我想学Python,结果买了Python3.4.3的书,可以在Python3.6.4上用吗? 
  在线教育网站(Coursera、网易云课堂、腾讯课堂等)有哪些值得推荐的 Python 课程? 
  27岁想转python,是否值得? 
  Python 的练手项目有哪些值得推荐? 
  目前比较好用的python开发工具是哪一个? 
  Python 语言的强制缩进是败笔吗? 
  电脑存在“熟悉”某项任务后运行变快的情况吗? 
  刷leetcode使用python还是c++? 
  python到底学什么? 
  python到底学什么? 

前一个讨论
教育自己的孩子时,你首先会让他懂得哪些简单的道理?
下一个讨论
小孩今年七岁上一年级,性格倔强,被老师批评总是昂着头,被认为是不尊重老师,老师一直针对他,该怎么办?





© 2025-01-30 - tinynew.org. All Rights Reserved.
© 2025-01-30 - tinynew.org. 保留所有权利