import matplotlib.pyplot as plt
from astropy.io import fits
def openfit(b):
hdu_list = fits.open(b)
hdu_list.info()
image_data = hdu_list[0].data
plt.imshow(image_data, cmap='gray')
plt.colorbar()
plt.show()
openfit(r"C:\Users\kapla_000\Desktop\barkin\bilgisayar\goruntu\HorseHead.fits")
ich dieses Stück Code zu öffnen und zu zeigen, meinen Pferdekopf paßt Bild, das ich von nahm (http://www.astropy.org/astropy-tutorials/FITS-images.html)Öffnen und zeigen Bilder in Python passen
openfit(r"C:\Users\kapla_000\Desktop\barkin\bilgisayar\goruntu\NGC2392_CXO.fits")
wenn ich versuche, den gleichen Code zu verwenden, um offen NGC2392_CXO (http://people.sabanciuniv.edu/ersing/proj102/)
i den Fehler auf Linie zu bekommen: "plt.imshow (image_data, cmap = 'gray')"
plt.imshow(image_data, cmap='gray')
File "C:\Users\kapla_000\Anaconda3\lib\site-packages\matplotlib\pyplot.py", line 3022, in imshow
**kwargs)
File "C:\Users\kapla_000\Anaconda3\lib\site-packages\matplotlib\__init__.py", line 1811, in inner
return func(ax, *args, **kwargs)
File "C:\Users\kapla_000\Anaconda3\lib\site-packages\matplotlib\axes\_axes.py", line 4947, in imshow
im.set_data(X)
File "C:\Users\kapla_000\Anaconda3\lib\site-packages\matplotlib\image.py", line 449, in set_data
raise TypeError("Image data can not convert to float")
TypeError: Image data can not convert to float
Ich denke, das Problem ist die Abmessungen der Bilddateien. Die Zeile „hdu_list.info()“ gibt die Eigenschaften des Bildes passen file.and für Pferdekopf es
Filename:
C:\Users\kapla_000\Desktop\barkin\bilgisayar\goruntu\HorseHead.fits
No. Name Type Cards Dimensions Format
0 PRIMARY PrimaryHDU 161 (891, 893) int16
1 er.mask TableHDU 25 1600R x 4C [F6.2, F6.2, F6.2, F6.2]
Und für NGC2392_CXO die gleiche Linie gibt von
Filename:
C:\Users\kapla_000\Desktop\barkin\bilgisayar\goruntu\NGC2392_CXO.fits
No. Name Type Cards Dimensions Format
0 PRIMARY PrimaryHDU 32 ()
1 EVENTS BinTableHDU 884 238647R x 19C [1D, 1I, 1I, 1J, 1I,
1I, 1I, 1I, 1E, 1E, 1E, 1E, 1J, 1J, 1E, 1J, 1I, 1I, 32X]
2 GTI BinTableHDU 28 1R x 2C [1D, 1D]
In dem 0-ten Index gibt HorseHead-Liste hat Integer-Dimensionen, in denen NGC2392_CXO keine Dimension hat. Ich kann nicht sehen, wie die NGC2392_CXO zu sehen ist
Laut ImageMagick ist die Bildgröße NGC2392_CXO 64x238647 Pixel. Ich denke, dass es die schiere Größe ist, die das Problem ist. –
Sorry für den kurzen Kommentar, aber Sie werden sich wahrscheinlich eine Menge Ärger ersparen, wenn Sie aplpy benutzen. – Iguananaut