Dax Feliz
Dax Feliz

Reputation: 12899

pyplot zooming in

I am trying to plot some data from Flexible Image Transport System (FITS) files, and I wanted to know if anyone knows how to focus on certain regions of a plot's axis. Here is some example code:

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'] # Let's 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)

How could I only plot the region from [1.3 to 4] in the x-axis?

Upvotes: 40

Views: 177547

Answers (2)

MaxPowers
MaxPowers

Reputation: 5486

Use the plt.axis() function with your limits.

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

where x_min, x_max, y_min, and y_max are the coordinate limits for both axes.

Upvotes: 62

nye17
nye17

Reputation: 13347

This question has nothing to do with how you manipulate pyfits, but simply a matter of adding

plt.xlim(1.3, 4.0)

to your code before plt.show()

Upvotes: 28

Related Questions