百科问答小站 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开发工具是哪一个? 
  使用yield可以做哪些很酷的事情? 
  用 Python 进行数据分析,不懂 Python,求合适的 Python 书籍或资料推荐? 
  Python中除了matplotlib外还有哪些数据可视化的库? 
  初中文凭可以学习编程吗?如果可以,是去靠谱的培训机构还是自学?学习方向都有哪些?就业环境如何? 
  python学习一定用pycharm吗? 
  PHP、Java、Python、C、C++ 这几种编程语言都各有什么特点或优点? 
  1,2,3,5,6,15,30的哈斯图怎么画? 
  如何看待 Guido 宣布退出 Python 决策层? 
  Python中 __init__的通俗解释是什么? 

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





© 2025-04-27 - tinynew.org. All Rights Reserved.
© 2025-04-27 - tinynew.org. 保留所有权利