pyplot放大缩小

37

我正在尝试绘制一些来自FITS文件的数据,并想知道是否有人知道如何聚焦于绘图轴的特定区域?这是一些示例代码:

import pyfits
from matplotlib import pyplot as plt
from matplotlib import pylab
from pylab import *
#Assuming I have my data in the current directory
a = pyfits.getdata('fits1.fits')
x = a['data1'] # Lets assume data1 is the column: [0, 1, 1.3, 1.5, 2, 4, 8]
y = a['data2'] # And data2 is the column: [0, 0.5, 1, 1.5, 2, 2.5, 3]
plt.plot(x,y)

我该如何在x轴上仅绘制区间[1.3到4]?

2个回答

57

使用plt.axis()函数来设置限制范围。

plt.axis([x_min, x_max, y_min, y_max])

其中x_minx_maxy_miny_max是两个轴的坐标限制。


@nye17 使用 xlim / ylimaxis 都无所谓,因为 axis 调用 xlim / ylim 来执行操作。请访问 源代码 中的 axis 定义。axis 更方便,因为您可以使用一个命令来操作所有四个限制。 - MaxPowers
@MaxPowers 你是对的,我不知怎么把它误认为是 add_axis,我的错! - nye17

25

这个问题与您如何操作pyfits无关,只是一个添加的问题。

plt.xlim(1.3, 4.0)

plt.show()之前添加到您的代码中


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接