如何在matlibplot中更改x轴和y轴的范围?

时间:2015-03-30 01:35:03

标签: python matplotlib

我是matlibplot的新手,我试图绘制一个半径为1的圆,但我的x和y轴都是从0到3,增量为0.25。现在,我绘制了图形和圆形,但我的x和y轴仅从0到1,因此在圆形的上方,下方,左侧或右侧几乎没有空间。这是迄今为止的代码:

    import numpy as np
    import matplotlib.pyplot as plt
    import scipy, pylab

    plt.axes()
    circle=plt.Circle((0, 0), radius=1, fc='w')
    plt.gca().add_patch(circle)
    plt.yticks(np.arange(0, 3, 0.25))
    plt.xticks(np.arange(0, 3, 0.25))
    plt.axis('scaled')
    plt.show()

我已经查看了以下问题,但发现它们要么对我想要完成的事情有点过于先进,要么只是偏离主题:

    http://stackoverflow.com/questions/27170139/how-to-change-the-range-of-my-x-axis-in-matplotlib

    http://stackoverflow.com/questions/22642511/change-y-range-to-start-from-0-with-matplotlib

   http://stackoverflow.com/questions/27456185/scaling-axis-for-a-scatter-plot-in-matlibplot-in-python

   http://stackoverflow.com/questions/22642511/change-y-range-to-start-from-0-with-matplotlib

我现在要做的是,在我的圆圈保持在图表的同一位置的同时,将x和y轴的范围从0-1增加到0-3,同时保持每个轴上的增量为0.25,允许我在圆的边缘绘制点,而不必担心圆的顶部,底部或任一侧接触两个轴中的任何一个。我已经查看了matlibplot文档,但似乎无法找到如何更改轴上间距的简单逐步说明。对此的任何见解都将是辉煌的!提前致谢!

2 个答案:

答案 0 :(得分:7)

要更改轴范围,可以使用

plt.xlim([-3, 3])
plt.ylim([-3, 3])

然后,您必须删除行plt.axis('scaled')才能生效。

import numpy as np
import matplotlib.pyplot as plt
import scipy, pylab

plt.axes()
circle=plt.Circle((0, 0), radius=1, fc='w')
plt.gca().add_patch(circle)
plt.xlim([-3, 3])
plt.ylim([-3, 3])
plt.yticks(np.arange(-3, 3, 0.25))
plt.xticks(np.arange(-3, 3, 0.25))
plt.show()

答案 1 :(得分:0)

先使用xticks和yticks,再使用xlim和ylim。这将在设置限制之前创建一个数组