我想用Obspy绘制地震波形数据,但它们是Ascii格式的。是否可以使用Obspy读取和绘制Ascii文件?
2答案
\ begingroup美元
\ endgroup美元
1
如果没有直接可用的函数,您可以自己创建一个跟踪/流对象。
我使用的解决方案(以一个时间序列为例)是:
- 将Ascii文件读入numpy数组
- trace = obspy.core.Trace(data=numpy数组头=您选择的头字典)
- stream = obspy.core.Stream(traces=[trace])
- stream.plot ()
\ begingroup美元
\ endgroup美元
1
好问题。我在这方面没有太多经验obspy具体地说——尽管如此,我还是没能找到任何用这个特殊的Python包来实现从TXT到SEGY/SEGD/SEG2的转换,这很有趣。我真的怀疑obspy缺少这种工具。但是,在不太可能和不幸的情况下,这可能是真的,我将为您列出一些其他(希望)可行的选择。
不过,也不是一切都完了。我以前做过很多次,但是不与obspy.我用过SeismicUnix在做这个之前A2B功能。而且,我两者都用过SeisLab(MATLAB包)和OpendTect这样做。请注意,哪种工具是最好的,这在某种程度上取决于你所拥有的地震数据类型。例如,如果您正在查看单个跟踪,那么一个软件包和/或代码可能比您的数据有许多跟踪(特别是有3d数据)更适合解决您的问题。
我发现这虽然它可能对你有些用处——但我还没有测试过。最后一点,我不记得了,但我想GeoGIGA可能有一个自由软件,其中包含这样的功能作为其工具集的一部分。
也许看这也会有帮助。
-
\ begingroup美元 嗨,谢谢,这个问题现在解决了,因为直接使用sac文件。 \ endgroup美元- - - - - -Atikul Haque Farazi2020年4月16日2:29