python - 在 python 中显示大型 .dat 二进制文件

标签 python binary astronomy idl-programming-language

我有一个 40 MB(约 173,397 行)的大 .dat 文件,其中充满了二进制数据(随机符号)。这是一张天文照片。我需要用Python读取并显示它。我使用二进制文件是因为我需要从图像的特定区域提取像素值数据。但现在我只需要把它导入到 Python 中。像READU之类的东西IDL 中的过程。尝试了 numpy 和 matplotlib 但没有任何效果。有建议吗?

最佳答案

您需要知道二进制文件的数据类型和尺寸。例如,如果文件包含 float 据,请使用numpy.fromfile,例如:

import numpy as np
data = np.fromfile(filename, dtype=float)

然后使用 numpy.reshape(相当于 IDL 中的 REFORM)将数组 reshape 为图像的尺寸 dims:

im = np.reshape(data, dims)

关于python - 在 python 中显示大型 .dat 二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53618780/

相关文章:

python - 来自 scipy.stats.rv_continuous 的自定义 PDF 不需要的上限

python - 使用 mysql 或 python 代码将一组文本文件导入到 mysql

python - XGBoost 决策树选择

python - 使用 Python 获取通过 SMS 发送的 Twitter 消息

http 内容类型和二进制数据

encryption - 如何将二进制私钥文件转换为openssl可接受的pem格式

python - 无法导入 pyspeckit

python - 如何保留句子中的特定字符

c - 在 C 中将时间戳存储为二进制分数

c# - .NET 的诺瓦斯